Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/448.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 对象空检查在typescript中不起作用_Javascript_Angular_Typescript - Fatal编程技术网

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;
?此外,如果你看到错误,请将它们包括在问题中,它们通常是关于问题的最重要信息。