Javascript和未定义的值

时间:2014-09-09 10:16:23

标签: javascript

我想检查一个对象中的值是否未定义: 我有以下代码

for (i=0; i<extra.points.length; i++){
    console.log(extra.points[i].coord)
    if (!extra.points[i].coord === undefined){
        console.log("creating");
        //rest of code
    }

}

extra具有以下值:

{
    points:[
       {name:'adp', coord:undefined}, 
       {name:'pdp', coord:{x:324, y:482}}
    ], 
    bicetrix:[]
}

但它根本不会进入if。我做错了什么?

2 个答案:

答案 0 :(得分:3)

运营商的秩序很重要。 !之前未评估===

我猜你的意思是

if (extra.points[i].coord !== undefined){
        console.log("creating");
        //rest of code
}

你所写的内容意味着&#34;如果不是(某事)严格等于未定义的&#34;。不是总是布尔值,即真或假。这无论如何都不等于未定义。

答案 1 :(得分:2)

!undefinedtruetrue === undefined始终为false