Javascript Don';t类型为null的元素的push属性

Javascript Don';t类型为null的元素的push属性,javascript,Javascript,如何仅将属性推送到类型不为null的数组? 我有以下代码: var array = []; var myImage = new Image(); for (var key in myImage) { if (typeof myImage[key] === null) { //code } } typeof null是对象。因此,您的条件总是false 检查如下: if(myImage[key]) // code 这将仅推送truthy元素 注 type

如何仅将属性推送到类型不为null的数组? 我有以下代码:

var array = [];
var myImage = new Image();
for (var key in myImage) {
    if (typeof myImage[key] === null) {
        //code
    }
}

typeof null
对象
。因此,您的条件总是
false

检查如下:

if(myImage[key])
    // code
这将
仅推送
truthy元素

typeof null//object(ECMAScript中的bug应为null)

确实是一种类型。但是,返回的对象为

相反,您可以使用:


请注意,使用严格的比较非常重要,因为
未定义的
空的
都被考虑在内,但不被考虑。

到底什么不起作用?您能详细说明
之间的区别吗=
==在这种情况下?
==
避免类型转换:
1=='1'
返回
true
,而
1=='1'
false
。在JavaScript中,
=
与“等同于”相同,而
==
与“等同于”。反向版本的功能相同。这就是我从你那里得到的code@Revels图像中的错误不是由我的代码产生的。
var array = [],
    myImage = new Image();
for (var key in myImage)
  if (myImage[key] !== null)
    array.push(myImage[key]);