Call and Apply in JavaScript】的更多相关文章

Call 和 Apply 方法可以用来代替另一个对象调用一个方法,改变this指向. 1.call -call([thisObj[,arg1[, arg2[,   [,.argN]]]]]) -调用一个对象的一个方法,以另一个对象替换当前对象. -call 方法可将一个函数的对象上下文从初始的上下文改变为由 thisObj 指定的新对象. 如果没有提供 thisObj 参数,那么 Global 对象被用作 thisObj. 具体方法实现见如下示例: <script type="text/j…
javascript有两种使用频率非常高的三个内置的功能:bind/apply/call.许多技术是基于高点,这些功能实现.这三个功能被用来改变的功能运行环境.从而达到代码复用的目的. 先来所说bind函数, bind,函数通常有两个用途: 1. 创建新函数,指定函数的this指针. name = 'global'; var obj1 = {name: 'foo'}; var showName = function() { console.log(this.name); } showName()…
关于call()与apply(): 在JavaScript中,每个函数都有call与apply(),这两个函数都是用来改变函数体内this的指向,并调用相关的参数. 看一个例子: 定义一个animal对象,该对象有一个jump()方法: var animal = { type:'animal', jump:function(name){ return this.type + ' is ' + name; } } some_animal.jump('dog'); **"animal is dog&…
apply . call .bind 三者都是用来改变函数的this对象的指向的: apply . call .bind 三者第一个参数都是this要指向的对象,也就是想指定的上下文: apply . call .bind 三者都可以利用后续参数传参: bind 是返回对应函数,便于稍后调用:apply .call 则是立即调用 . 以前用过一段时间 node.js,经常看到有 apply,call这类的函数.干啥用的?很高大上的样子. 一.call 和 apply 在 javascript 中…
工作的时候粗读过这本书的几章内容,真真是囫囵吞枣~~目前手边就剩这一本,重新读才觉得先前是没看明白啊!这个作者博闻强识,对这些插件.库了解的非常多.记录下,查的资料 订阅/发布 jQuery Tiny Pub/Sub 书中提及的库更新到这了 MDC Apply  Function.prototype.apply() Simple JavaScript Inheritance 书中提及的类继承中的库,特别短但不容易理解,下面博客园的同仁解释啦 理解John Resig's 'Simple Java…
声明 本文仅为读书笔记并致力于理解Js中的this关键字.如有雷同,纯属巧合.原因有二,其一:有幸看了同一本书,其二:this这玩意已被说烂了~ 为什么要用this? this提供了优雅的方式隐式传递对象的引用 上实例: function sayEng(){ console.log(this.name+":sayEng"); } function sayChi(){ console.log(this.name+":sayChi"); } function stu()…
Tips: return false - event.preventDefault(); //阻止默认行为 P.S 阻止a标签的跳转 - event.stopPropagation(); //阻止事件冒泡 Call & Apply 代替另一个对象调用一个方法,改变this指向 详见本人博客:Call and Apply in JavaScript Prototype 原型 详见本人博客:Prototype in JavaScript Js,Jquery的混用 一直算是知道不能混用的准则,但还是被…
call与apply函数 1.为什么需要call与apply函数 Javascript中,每一个函数内部都有一个特殊的关键词this,其随着所处环境的不同其指向也是不同的. 函数的内部其this也是指向window对象 行内绑定:其函数内部的this指向window对象 动态绑定:其函数内部的this指向当前正在操作的dom对象   问题:我们可不可以人为的更改函数内部的this指向呢? 答:可以,使用call或apply方法. 2.call或apply函数的定义 ① call([thisObj…
A2 一等公民函数 在传统 OO 语言里,对象包含数据和方法.这些语言里,数据和方法通常是不同的概念:javascript另辟蹊径. 与其他 js 的类型一样,函数可以作为对象处理,如String.Number.Date等. 与其他对象类似,函数可以通过javascript函数定义 -- 此时函数可以 赋值给变量: 赋值给对象属性: 作为参数传递: 作为函数结果返回: 使用文本创建. 因为这个语言里,函数与其他对象的处理方式类似,所以我们说函数是一等对象(first-class object).…
JavaScript 也称 ECMAScript as "JavaScript" It is designed to run as a scripting language in a host environment, and it is up to the host environment to provide mechanisms机制 for communicating with the outside world. The most common host environment…