这个问题困扰了我很久

这个问题困扰了我很久

http://img1.sycdn.imooc.com/climg//592fad41000175be04750083.jpg

http://img1.sycdn.imooc.com/climg//592fad4100015ac702180045.jpg

这个例子是在另一个变量上接收了上面一个数组的改变后的值

可是打印原来最初的数组

它的值也跟着变了http://img1.sycdn.imooc.com/climg//592fad410001a6c603720221.jpg

http://img1.sycdn.imooc.com/climg//592fad420001b1fb02130028.jpg

而这个打印最初的数组却没有变化

简而言之就是:

var a=一个值,

b=a.方法()

然后现在a的值到底有没有发生变化呢?

正在回答

登陆购买课程后可参与讨论,去登陆

1回答


这要看那些数组的内置方法本身是怎么定义的吧,有的会改变原数组,有的不改变。

我大致归纳一下:

会改变原数组(调用数组)的:reverse()、sort()、splice()、push()、pop()、unshift()、shift()…………;

不会改变原数组(调用数组)的:join()、concat()、slice()、toString().............。

希望没有搞错的。

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
微信客服

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

帮助反馈 APP下载

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

公众号

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

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师