来源:渡一教育之每日一题
以下代码的运行结果?
var arr = [];
arr[0] = 1;
arr['0'] = 2;
console.log(arr[0] + arr['0'])
解题分析
1、arr[0]、arr[‘0’]区别是什么?
字面上看就是取值的类型不一样。
2、arr[0]、arr[‘0’]类型不一样,取值有什么区别?
其实没什么区别,js中数组本质也是一个对象,对象的key是字符串,我们通常写成arr[0],其实也会转换为字符串,所以两种写法没什么区别
3、arr[0]、arr[‘0’]既然两个是一个东西,那么他们也都是在给数组索引为0的下标赋值,所以最终结果为4
总结
当前一题主要是学到了对象(数组)索引是数字的时候,取值用number或字符串都是可以的;