为了账号安全,请及时绑定邮箱和手机立即绑定

二维数组的长度

二维数组的长度

_天蝎座的你_0 2015-12-14 15:32:56
    var  arr = ['*','##',"***","&&","****","##*"];    arr[7] = "**";为什么长度是8
查看完整描述

2 回答

已采纳
?
Perona

TA贡献355条经验 获得超403个赞

JS中,数组长度是从1开始,数组下标是从0开始。

即如果数组下标只有0,那么数组长度是1。

以此类推,数组下标到7,那么数组长度是8。

查看完整回答
2 反对 回复 2015-12-14
?
Loliner

TA贡献1条经验 获得超1个赞

arr[7] = "**"表示给数组arr下标为7的元素赋值上字符串"**",因为数组的起始下标为0,则0到7总共有8位,也就有8个元素,所以长度是8。

但是需要注意的是,原数组长度为6,也就是下标为0、1、2、3、4、5的元素都有值。现在我们直接给下标为7的赋值后,下标为6的元素并非不存在,输出其值为undefined,可以理解为下标为6的地方有个叫undefined小人占着茅坑不拉屎。

最后,当我们声明一个空数组,直接给下标为n的位置赋值,那么该数组的length肯定是n+1,因为前面有n个undefined的小人占着茅坑不拉屎。

希望能帮到你。^_^

查看完整回答
1 反对 回复 2015-12-14
  • 2 回答
  • 0 关注
  • 1597 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信