小程序
小游戏
企业微信
微信支付
扫描小程序码分享
3 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
a.push操作,就是往a里放东西,返回的是最终a的长度
如
a = [2]
c = a.push(3) // c为2,a变为[2,3]
a.concat操作,a本身不会变,返回a的副本拼接后的内容
b = a.concat(5) // b为[2,5],a还是[2]
另外,字符串和数组都可以使用concat方法
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
console.log几乎是异步的
我为什么做这个小实验呢,因为我在实际开发中真遇到这个无法解释的坑,请看下面
1.我在push前里面有 3 和5 JPG 图片,然后我再push 2.jpg,奶奶的胸,正常结果,应该是3 5 2.jpg,结果却是 3,2,2 jpg,搞的我一脸懵逼,简化了很多,还是无法解释
是你自己的问题
简化来说 a = [{imageSetting:3},{imageSetting:5}]
a[1]就是{imageSetting:5}
a[1].imageSetting = 2 // => a[1]就变为{imageSetting:2},整个a就变为[{imageSetting:3},{imageSetting:2}]
此时你在push a[1]
结果那不就是[{imageSetting:3},{imageSetting:2},{imageSetting:2}]
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
a.push操作,就是往a里放东西,返回的是最终a的长度
如
a = [2]
c = a.push(3) // c为2,a变为[2,3]
a.concat操作,a本身不会变,返回a的副本拼接后的内容
如
a = [2]
b = a.concat(5) // b为[2,5],a还是[2]
另外,字符串和数组都可以使用concat方法
console.log几乎是异步的
var a=1;
console.log(a)
a=2
console.log(a)
这个就是 输出1 和2
只有碰到对象什么的,就是引用地址空间的时候, 效果看起来像是异步的,只能说在对象这种类型的结构中,打印的速度没有修改内存数据的快,即使你打印的代码在前面。
我为什么做这个小实验呢,因为我在实际开发中真遇到这个无法解释的坑,请看下面
1.我在push前里面有 3 和5 JPG 图片,然后我再push 2.jpg,奶奶的胸,正常结果,应该是3 5 2.jpg,结果却是 3,2,2 jpg,搞的我一脸懵逼,简化了很多,还是无法解释
是你自己的问题
简化来说 a = [{imageSetting:3},{imageSetting:5}]
a[1]就是{imageSetting:5}
a[1].imageSetting = 2 // => a[1]就变为{imageSetting:2},整个a就变为[{imageSetting:3},{imageSetting:2}]
此时你在push a[1]
结果那不就是[{imageSetting:3},{imageSetting:2},{imageSetting:2}]
https://developers.weixin.qq.com/s/jStrK9my7vdY