//------------------ //1 //------------------ console.log(_arr[len-1].length); //Cannot read property 'length' of undefined ??? //------------------ //2 //------------------ if(undefined !== _arr[len-1] && _arr[len-1].length){ console.log(_arr[len-1].length); //2 };
第二行就行,why
第二行代码运行到 _arr[len-1] 这里的时候就发现已经不行了,没必要再运行 && _arr[len-1].length 了,所以也不会管它是不是会报错!
len是什么鬼?什么时候赋值的,个人猜测是你这段代码不只执行了一次,同事len还未赋值,或者len赋值不成功
能把代码的上下文给完整吗?