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

js apply和 call的理解 路过的大侠 帮帮忙谢谢!

js apply和 call的理解 路过的大侠 帮帮忙谢谢!

Cats萌萌 2018-12-06 22:21:21
代码: <script type="text/javascript" charset="utf-8"> // 伪数组(ArrayLike) var jqObj = { 0: 'one', 1: 'two', 2: 'three', length: 3 }; //数组 ary = ['one', 'two', 'three']; // 将伪数组(ArrayLike)转成数组 function jqObjToArray(json){ var slice = Array.prototype.slice; return slice.call(json, 0); } // 将数组转成伪数组(ArrayLike) function ArrayToJqObj(ary){ var obj = {}, push = Array.prototype.push; push.apply(obj, ary); return obj; } console.log(jqObjToArray(jqObj)); console.log(ArrayToJqObj(ary)); </script> return slice.call(json, 0); 输出["one","two","three"] return slice.call(json, 1); 输出["two","three"] 这个他内部运行的原理??为什么 还有这个 push.apply(obj, ary);注 :不是问apply和call 个差别 这个就不用回答了!
查看完整描述

1 回答

?
叮当猫咪

TA贡献1776条经验 获得超12个赞

就是传入参数的第2个参数有点区别

其实2者的作用就是改变作用域

查看完整回答
反对 回复 2018-12-24
  • 1 回答
  • 0 关注
  • 440 浏览
慕课专栏
更多

添加回答

举报

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