我在javascript数组中遇到问题...我在JS中使用Serversent事件。我将经常从服务器获取少量值...
我的任务是抓住所有细节并在下拉框中显示......
现在问题是,在第一次请求期间,我将通过逗号分隔值。 我在js中有数组对象...我将检查数组是否为空,如果是,那么我将在组合中包含值...
代码:
var varArr = new Array();
//since i am using SSE, i will executing this below part multiple times automaticall when ever server pushes data..
if(!varArr.length){
varArr[0]='somevalue';
//Printing some value in <div>
}
else{
//some task...to print in <div>
}
因为如果数组为空,我在数组中添加了一些值,我没有在div中打印任何值(//打印一些值),而是我得到(//某个任务...打印到)
答案 0 :(得分:3)
也许你的意思是这样做?
var varArr = new Array();
if (varArr.length === 0) {
varArr.push(somevalue);
// Printing some value in <div>
} else {
// Some task...to print in <div>
}
答案 1 :(得分:1)
感谢您发布此消息,我开始认为我对这个问题很生气。基本上似乎不可能声明一个完全空的数组。我发现以下解决方法回避了问题,声明数组中有一个虚拟值,例如
var varArr = ['dummy_value'];
甚至
var varArr = [];
然后您可以完全按照预期为其分配值。在任何一种情况下,它的长度都是1,因此检查长度可能不是检测它是否已被更改的正确方法。但是,您可以使用以下内容测试是否已更改:
if (varArr[0]=="dummy_value") ...