搜索

首页  >  问答  >  正文

javascript - 判断一个双重数组变量:(不存在或者为空或者为[[]]) == true?

如题:

var doubleArray ;
if(!doubleArray || (doubleArray.lenght==&& doubleArray[0].length == 0 ){
return;
}
巴扎黑巴扎黑2825 天前409

全部回复(3)我来回复

  • 滿天的星座

    滿天的星座2017-05-18 11:03:34

    雷雷

    回复
    0
  • 我想大声告诉你

    我想大声告诉你2017-05-18 11:03:34

    不完全等价。。。。。。如果限定 doubleArray 一定是二重以内的数组就等价。。。

    undefined != true
    null != true

    都是很正常的,对于对象==其实是toPrimitive之后再进行比较。
    对于Array,其实就是toString之后在进行比较,toString默认调用join
    所以不论几重的数组,只要是空的,都是相当与“” == true

    回复
    0
  • phpcn_u1582

    phpcn_u15822017-05-18 11:03:34

    自己合并一下情况把。随便写的

    function isEmpty(obj) {
        if (!obj) {
            return true;
        }
        if (Array.isArray(obj)) {
            if (!obj.length) {
                return true;
            } else if (obj.length === 1 && Array.isArray(obj[0]) && obj[0].length === 0) {
                return true;
            } else {
                return false;
            }
        } else {
            return false;
        }
    
    
    }

    回复
    0
  • 取消回复