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

apply传入的数组怎么处理,凌乱了。。。

apply传入的数组怎么处理,凌乱了。。。

慕虎7371278 2018-10-18 14:11:33
function test(txt){    this.key=['red','green','blue']    this.newArray=txt    //this.key.push(txt)} function test1(){     test.apply(this,['yellow','orgen']) }var fun=new test1()fun.newArray=====>"yellow"传入的是一个数组test里通过txt拿到的却是个字符串"yellow"但是将apply换成callfunction test(txt){    this.key=['red','green','blue']    this.newArray=txt    //this.key.push(txt)} function test1(){     test.call(this,['yellow','orgen']) }var fun=new test1()fun.newArray=====>["yellow", "orgen"]得到的却是["yellow", "orgen"]如果放开this.key.push(txt)在构造函数内部拼接数组最后得到的是["red", "green", "blue", "yellow"](apply换成call也一样)但是将push放到函数外在实例引用时拼接便能拿到两个数组拼接到一起的情况function test(txt){    this.key=['red','green','blue']    this.newArray=txt    //this.key.push(txt)} function test1(){     test.call(this,['yellow','orgen']) }var fun=new test1()fun.key.concat(fun.newArray)=====>["red", "green", "blue", "yellow", "orgen"]目的在构造函数内部完成数组正确拼接
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 596 浏览
慕课专栏
更多

添加回答

举报

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