call和apply的理解
来源:互联网 发布:易语言数据库怎么用 编辑:程序博客网 时间:2024/06/11 15:25
一、方法的继承
function Animal() {
this.name = "Animal";
this.showName = function () {
alert(this.name);
}
}
function Cat() {
this.name = "Cat";
}
var animal = new Animal();
var cat = new Cat();
//通过call或apply方法,将原本属于Animal对象的showName()方法交给对象cat来使用了。
//输入结果为"Cat"
animal.showName.call(cat, ",");
//animal.showName.apply(cat,[]);
注: call 的意思是把 animal 的方法放到cat上执行,原来cat是没有showName() 方法,现在是把animal 的showName()方法放到 cat上来执行,所以this.name 应该是 Cat
二、对象(类)的继承
function Animal(name) {
this.name = name;this.showName = function () {
alert(this.name);
}
}
function Cat(name) {
Animal.call(this, name);
}
var cat = new Cat("Black Cat");
cat.showName();
注: Animal.call(this) 的意思就是使用 Animal对象代替this对象,那么 Cat中不就有Animal的所有属性和方法了吗,Cat对象就能够直接调用Animal的方法以及属性了.
三、多重继承
function Class10() {
this.showSub = function (a, b) {
alert(a - b);
}
}
function Class11() {
this.showAdd = function (a, b) {
alert(a + b);
}
}
function Class2() {
Class10.call(this);
Class11.call(this);
}
注: 很简单,使用两个 call 就实现多重继承了
- call和apply的理解
- JavaScript call()和apply() 的一些理解
- call和apply的深入理解
- call和apply的浅显理解
- 关于 apply,call 和 bind 的理解
- 轻松理解call和apply
- jauery call() apply()的理解
- 个人对call和apply方法的理解
- 对JavaScript中call和apply的理解
- 关于JS中Apply和Call的一些理解
- 对js中call、apply和bind的理解
- js 中call和apply的理解-切换上下文环境
- JavaScript中apply和call用法的理解
- 理解JavaScript中的this、call和apply
- JavaSrcipt中的call()和apply()方法理解
- Javascript:apply()和call()方法深入理解
- call和apply理解及使用方法
- 深入理解call,apply和bind
- Android使用DialogFragment创建对话框
- Android线程池使用终结版
- Java LinkedList工作原理及实现(一)
- java 注意线程下的 异常捕获,会跳过sleep(10000)休眠,可能会出现死循环
- CSS3-多栏布局
- call和apply的理解
- pugixml使用总结
- 写给计算机的大学生!
- Monkey的基本命令
- 关于页面展示的时候出现的问题(笔记)
- Oracle 11g export and import
- Linux流程解析二
- 使用DividerGridItemDecoration遇到的坑
- OS高级开发~Runtime(四)