<html> <head> <script type="text/javascript"> Function.prototype.Apply = function (obj, arr) { obj = obj || window; obj._tempFunction = this; var rv; if (!arr) { rv = obj._tempFunction(); } else { var args = []; for (var i = 0, len = arr.length; i < len; i++) { args.push('arr[' + i + ']'); } rv = eval("obj._tempFunction(" + args + ")"); } delete obj._temFunction; return rv; } Function.prototype.Call = function () { return this.Apply(Array.prototype.shift.Apply(arguments), arguments); } var obj = {}; function f(a,b,c) { console.log(this == obj);//看看Apply和Call 是不是把函数内的this 指向了 obj对象 console.log(a + b + c); } f(1, 2, 3); f.Apply(obj, [4, 5, 6]); f.Call(obj, 7, 8, 9); </script> </head> <body> </body> </html>
相关推荐
(1)call 的第一个参数改变了this 的指向 (2)call 将后面的参数依次赋给了bar函数的形参 (3)执行bar函数 (1)改变this指向:我们将
js代码-this的指向(模拟8):使用 bind 、 call 、 apply的形式自定义this的指向
call和apply模拟实现 bind模拟实现 new模拟实现 深浅拷贝 函数柯里化 防抖和节流 函数递归 ES6 let, const Symbol, Iterator和Map Generator, Promise和Async Proxy和defineProperty Web 浏览器 浏览器渲染 事件循环...
暑假还搞了ext4的web desktop,...(其实这里是错的,感谢 @记忆的森林 的提示,还可以用apply和call去实现) 因为javascript没有专门的机制去实现类,所以这里只能是借助它的函数能够嵌套的机制来模拟实现类。在javas
JS继承 JavaScript中没有类...而改变函数的执行环境可以使用call()和apply()两种 方法来实现。 我们首先创建一个Animal“类”(因为JS中没有类的概念,这里只是一个模拟,它实际上只是一个 Function函数对象)。 代码如
interview-question 题目列表 CSS JavaScript 6. 函数节流和防抖的概念以及常见的使用场景 7. ['1', '2', '3'].map...23. 模拟实现call、apply 24. 模拟实现bind函数 25. JavaScript内存机制 26. v8引擎执行js代码的过
Constructor = [].shift.call(arguments); obj.__proto__ = Constructor.prototype; var ret = Constructor.apply(obj, arguments); return typeof ret === 'object' ? ret : obj; } 注意如果返回值是一个基本...
call和apply方法为类式继承提供了支持。通过改变this的作用环境,使得子类本身具有父类的各种属性。 var father = function() { this.age = 52; this.say = function() { alert('hello i am '+ this.name ' and...
(3) 继承方式2—call()方法与apply()方法 28 call()方法 28 apply()方法 28 (4) 继承方式3—原型链(prototype chaining) 29 (5) 继承方式4—混合方式 29 附:ECMAScript关键字与保留字 1. 关键字 30 2. 保留...
Node.js [Node.js 进阶系列] Koa 源码分析之 ...[实践系列]call,apply,bind 走一个 [实践系列]模拟实现 new 操作符 [实践系列]不要肆无忌惮地在你的项目中使用 ES78910 了~ [实践系列]「nodejs + docker + github
2.16.html apply方法与call方法的使用。 第3章(\c03) 示例描述:学习JavaScript的高级语法。 3.1.html 连接字符串。 3.2.html indexOf()函数与lastIndexOf()函数。 3.3.html 截取字符串的子串。 ...