你好我想我使用setInterval函数的属性我得到的这个目的,但价值一秒的延迟后刷新对象内部的属性值是不正确的更改对象的属性在Javascript
var nextlvl = '';
function showPlaybackData() {
if(j.nextLevel == -1){
nextlvl = '';
}else if(j.nextLevel == 0){
nextlvl = '240p';
}else if(j.nextLevel == 1){
nextlvl = '360p';
}else if(j.nextLevel == 2){
nextlvl = '480p';
}else if(j.nextLevel == 3){
nextlvl = '720p';
}else if(j.nextLevel == 4){
nextlvl = '1080p';
}
console.log(nextlvl);
return nextlvl;
}
var g = {
id: -1,
label: 'auto(' + setInterval(showPlaybackData , 1000) +')',
selected: -1 === j.manualLevel
};
e.push(g)
属性标签的值应该是我根据条件设置的这些分辨率之一,但它显示14或18或15.任何解决方案? 当我使用console.log
我得到准确的值内的功能,但当我呼吁setInterval
函数的价值是不正确的。
这不是你如何使用['setInterval'](https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/setInterval#Return_value) - 它不会返回'showPlaybackData'函数就像你期望的那样。 –
'setInterval'不返回所需的值。 'setInterval'返回一个用于跟踪定时器的数字。您需要提供更多关于您想要实现的数据。 – Panther
@KarlReid我如何获得所需的数据任何解决方案? –