首先转载一篇博文:关于map 和callbackfn 的一些参数和返回值可以查看以下链接. http://www.cnblogs.com/xuan52rock/p/4460938.html array1.map(callbackfn[, thisArg]) 其中参数 callbackfn[, thisArg] 可以参考Foreach callbackfn 为回调函数(也可以说是要遍历时执行的方法) thisArg 为当前遍历对象的值. 下面是将字符串转换成int数组的实例: <script ty…
 壹 ❀ 引 如果有人问,在angularjs中修改模型数据为何视图会同步更新呢,我想大多数人一定会回答脏检查(Dirty Checking)相关概念.没错,在angularjs中作用域(scope)作为链接控制器(controller)与视图(view)之间的桥梁,除了绑定数据监听事件外,一旦有数据发生改变,scope还兼顾了脏检测更新视图的职责,这是我们宏观的理解. 这就引发了一系列的问题,以点击事件为例,为什么在angularjs中用原生click事件达不到更新视图的效果?ng-click…
今天看到了js的call与apply的异同,想着整理一下知识点,发现了一篇好文章,分享过来给大家,写的非常好! 参考: http://www.cnblogs.com/delin/archive/2010/06/17/1759695.html http://blog.csdn.net/myhahaxiao/article/details/6952321 1.对象的继承,一般的做法是复制:Object.extend prototype.js的实现方式是: Object.extend = functi…
每个函数都是Function类型的实例.函数有三种定义方式和两个内部属性arguments和this. 同时函数也是对象,也有属性和方法.本篇主要其call()和apply()方法 属性 length 表示该函数希望接受的命名参数的个数 prototype 保存引用类型的实例方法.这个大强大功能是实现继承.下篇文章会讲到. 方法 call() 和 apply() 这两个方法的用途都是在特定的作用域中调用函数,实际上等于设置函数体内this对象的值.这便是它的强大的之处:扩充函数赖以运行的作用域.…
1.这两个方法十分重要:可以改变函数的作用域,也就是改变函数中的this     使用call()方法的时候,必须明确传入每一个参数,结果跟apply()是一样的,废话不多说,下面来一个简单的案例,便于理解 function sayColor(x,y) { alert( this.color + ",x=" + x + ",y=" + y); } var color = "blue" ; var o = { color: "red&qu…
1.call()和apply()的作用是改变this指向,区别是传参列表不同(前者连续参数,后者为参数数组) 2.方法定义: function.apply(thisObj[, argArray]) function.call(thisObj[, arg1[, arg2[, [,...argN]]]]); 特别地,当没有传参数时,function.call() 相当于执行这个function 3.实例: 由于apply()和call()方法作用是一致的,因此这里以call()为例,apply()同…
ECAMScript 3给Function的原型定义了两个方法,它们是 `Function.prototype.call` 和 `Function. prototype.apply`.在实际开发中,特别是在一些函数式风格的代码编写中,call 和 apply 方法尤为有用.在 JavaScript 版本的设计模式中,这两个方法的应用也非常广泛,能熟练运用这两个方 法,是我们真正成为一名 JavaScript 程序员的重要一步. 1.call和apply的区别 Function.prototype…
apply方法,作用跟call一样,也可以用来改变函数执行时,this指针的指向,区别在于apply方法要求第二个参数必须是数组形式 例子,舞台上添加名为a和b的实例mc 案例1: a.getNumValue=function(num:uint){ trace(this.name,num) }; a.getNumValue.call(a,2); a.getNumValue.call(b,2); a.getNumValue.apply(b,[1]); /* trace结果 a 2 b 2 b 1…
前言 前段时间面试遇见一题,题目内容大概是 function Parent() { this.prop = 'parent'; } Parent.prototype.get = function() { alert(this.prop); }; Parent.prototype.show = function() { setTimeout(this.get, 100); }; var child = new Parent(); child.show(); // ? 分析 上述题目考察的是this…
在看uncurrying化函数时候,碰到了Function.prototype.call.apply()的用法: 先说说uncurrying()函数: Function.prototype.uncurrying = function(){ var self = this; return function(){ var obj = Array.prototype.shift.call(arguments); return self.apply(obj,arguments); } } 然后可以通过v…