课程
/前端开发
/JavaScript
/JavaScript深入浅出
function arraysSimilar(arr1, arr2){
var d = arr1.length;
var c;
if (!(arr1 instanceof Array) || !(arr2 instanceof Array)) return false;
控制台报 VM4917:8 Uncaught TypeError: Cannot read property 'length' of null
2016-08-19
源自:JavaScript深入浅出 1-6
正在回答
你没有检测输入的 arr1 和 arr2 是否为数组
错误提示:
Uncaught TypeError: Cannot read property 'length' of null // 不能读取null属性的长度
意味着 arr1 或者 arr2 在测试数据中,有一个或多个输入数据为 null
所以,你需要先检测数据类型,确认是数组后,再获取数组长度:
if (!Array.isArray(arr1) || !Array.isArray(arr2) || arr1.length != arr2.length) { return false; }
没有少,重点是var d = arr1.length;这行代码,如果注掉,运行ok,不注掉,运行Uncaught TypeError: Cannot read property 'length' of null
结尾少了"}"
yangjiayu 提问者
举报
由浅入深学习JS语言特性,且解析JS常见误区,从入门到掌握
2 回答arr1:null 无法读出arr1.length,导致报错
4 回答0 in arr1//ture
4 回答typeof function 的问题,直接输入会报错?
1 回答!(arr1 instanceof Array)前面的感叹号什么意思,求大神解释
2 回答为什么按照教程输入bind会报错呢?