Js中apply与call的区别与用法
2016-03-17 12:00
375 查看
解析:
apply与call是更改对象的内部指针,即改变对象的this指向的内容。 call与apply的第一个参数都是要传入给当前对象的对象,及函数内部的this。后面的参数都是传递给当前对象的参数。
参数区别:
apply传入的必须是一个参数数组,也就是将多个参数组合成为一个数组传入,而call没有此限制。
代码分析:
var func=new function(){this.a="fun"}; var myfunc=function(s){ var a="myfunc"; console.log(this.a); console.log(a); console.log(s); }; myfunc.call(func,"test"); //fun myfunc test myfunc.apply(func,["test"]); //fun myfunc test myfunc.call(func,["test"]); //fun myfunc ["test"] myfunc('444') //undefined myfunc 444
ps:鉴于个人经验有限,所有观点,如有异议,请直接回复讨论(请勿发表攻击言论)。 加入QQ群209952809(需回答问题,答案为csdn);群聊更快解决问题,更happy。
相关文章推荐
- 《Android框架揭秘》读书笔记——JNI
- android开发 装饰者模式
- Android Studio 插件推荐(合集)
- Android 常用小代码
- Android项目EditText焦点问题
- IOS使用正则表达式去掉html中的标签元素,获得纯文本
- Swift2.0学习笔记(整理版)
- android圆角矩形图片的实现进而讨论view自定义的要点
- android studio快捷键大全
- android sdk manager 代理设置
- Android悬浮窗进阶版-上篇(思路篇)
- iOS 阿拉伯数字转化为中文数字
- Android四大基本组件介绍与生命周期
- swift 的基本语法
- 字符串连接:使用StringBuffer#append来替代”+”真的会带来性能提升吗?
- android GridView android:stretchMode="columnWidth"
- Android Activity内镶嵌Activity
- Android菜鸟的成长笔记——PreferenceFragment 与 自定义Preference
- Android WebView不显示视频
- 分享一个仿ios风格的AlertDialog的实现