Javascript 对象空检查在typescript中不起作用
如果秩值不是空的,我会尝试将其放入数组中。但我无法检查空值Javascript 对象空检查在typescript中不起作用,javascript,angular,typescript,Javascript,Angular,Typescript,如果秩值不是空的,我会尝试将其放入数组中。但我无法检查空值 Array Data 0: {name: 0, age: 58, dob: "", mark1: 63, mark2: 43} 1: " " 2: " " 3: " " 4: " " 5: " " 6: " " 如果对象为空,则不应进入if循环,此时循环将进入所有6个对象 for (let j = 0; j <= 6; j++) { if(rankData[j] !==undefined &
Array Data
0: {name: 0, age: 58, dob: "", mark1: 63, mark2: 43}
1: " "
2: " "
3: " "
4: " "
5: " "
6: " "
如果对象为空,则不应进入if循环,此时循环将进入所有6个对象
for (let j = 0; j <= 6; j++)
{
if(rankData[j] !==undefined && rankData[j] !==" " && (Object.keys(rankData[j]).length)!== 0 &&
rankData[j] !=='undefined' && rankData[j] !=='undefined-undefined' )
{
rankData[j].rank = J;
}
}
for(让j=0;j如果你想检查某个给定的“某物”是否为空,你可以使用我在互联网上找到的这个函数
函数为空(值){
if(typeof value==“未定义”)返回true;
if(value==null)返回true;
if(typeof value==“string”&&value.trim().length==0)返回true;
if(Array.isArray(value).length==0)返回true;
如果(typeof value===“object”&&object.keys(value).length==0)返回true
//如果这些都不是真的,我们返回false
返回false;
}
有必要检查数组的元素是否满足条件。如果满足条件,则为rank
属性指定一些值:
让arr=[
{姓名:0,年龄:58,出生日期:,马克1:63,马克2:43}
, " "
, " "
, " "
, " "
, " "
, " "
];
对于(让index=0;index0&&typeof elem!=“string”&&elem){
元素秩=指数;
控制台日志(elem);
}
}
console.log(arr);
我认为您使用了J而不是J(在rankData[J].rank=J;)
var数组=[
{名称:0,dob::},
" ",
" ",
" "
];
对于(var j=0;j0,在您的情况下,秩值是多少?检查数组是否有空字符串?很难理解您需要什么,请重新格式化每次都会发生循环,您是说中的代码每次都在运行吗?(另外,您有输入错误,rakdata
)@DBS:是的,即使是循环中的空对象。JS和Typescript都是区分大小写的语言,你是说rankData[j].rank=j;
?此外,如果你看到错误,请将它们包括在问题中,它们通常是关于问题的最重要信息。