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

js中的代码执行顺序是怎样的,问题如下,第12行的输出结果不是应该是[1,2,3,4,5,6,7]

js中的代码执行顺序是怎样的,问题如下,第12行的输出结果不是应该是[1,2,3,4,5,6,7]

DIEA 2019-04-12 14:11:42
 <!DOCTYPE html><html><head>    <meta charset="UTF-8">    <title>test</title></head><body><script>    /*为什么第12行会输出[1,2,3,4,5,6],不应该是[1,2,3,4,5,6,7]吗?*/    var arr=[1,2,3,4,5];    arr.push(6,7);    console.log(arr);//输出[1,2,3,4,5,6]    console.log(arr.length);//输出7    arr.pop();    console.log(arr);//输出[1,2,3,4,5,6]    console.log(arr.length);//输出6</script></body></html>
查看完整描述

6 回答

?
哆啦的时光机

TA贡献1779条经验 获得超6个赞

在用console.log()输出数组或对象时,对象(数组)的属性有时是折叠不显示的。
如果你在console.log()输出之后改变了对象(数组)的属性,当你点击三角展开属性时,会重新读取对象(数组)当前的属性,也就是显示出来的是你点击三角展开时的属性,而不是执行console.log()时的属性。

解决方法是用console.log(JSON.stringify(arr));以字符串方式输出。


查看完整回答
反对 回复 2019-05-12
?
慕丝7291255

TA贡献1859条经验 获得超6个赞

那个6 也是你按F12打开控制台时才读取的数组length。

你如果先按F12打开控制台,再刷新下页面就可以输出7了。

查看完整回答
反对 回复 2019-05-12
?
神不在的星期二

TA贡献1963条经验 获得超6个赞

你使用pop()删除了最后一个元素,你这不是明知故问么


查看完整回答
反对 回复 2019-05-12
  • 6 回答
  • 0 关注
  • 648 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号