Из контекста вашего кода кажется, что response
является объектом, и это является причиной проблемы, поскольку animate()
ожидает, что значение, которое вы предоставляете, является целым числом.
Из контекста вашего использования response
в другом месте кода, похоже, вам нужно получить доступ к указанному свойству c temperature
из него, например:
if (response.data[0]["avg_temperature"] == null)
response.data[0]["avg_temperature"] = "-";
var colors = ['#11E117', '#FFC300', '#C00']
let $avgTemp = $("#avg_temperature").text(response.data[0]["avg_temperature"]);
$avgTemp.data('fgColor', '#11E117').knob();
$({
animatedVal: 0
}).animate({
animatedVal: parseInt(response.data[0]["avg_temperature"], 10) // update here
}, {
duration: 3000,
easing: "swing",
step: function() {
var val = Math.ceil(this.animatedVal);
$avgTemp.trigger('configure', {
'fgColor': colors[(val < 40) ? 0 : (val < 70) ? 1 : 2]
}).val(val).trigger("change");
var newVal = val + String.fromCharCode(176) + 'C';
$avgTemp.val(newVal);
}
});
Также обратите внимание на удаление async: false
, Это плохая практика, и она тебе здесь все равно не нужна