object 属性 对象的继承 (原型, call,apply)
2013-07-08 13:13
281 查看
object 为一切对象的基类!
属性:
constructor: 对创建对象的函数的引用
Prototype: 原型(类型)
hasOwnProperty(property):判断对象是否有某个特定的属性
isPrototypeOf():判定该对象是否为另一个对象的原型!
instanceof(): 判定对象是否为另一个对象的类型
继承:call,apply
1.用原型实现:
function func1(){
//代码
}
function func2(){
// 代码
}
func2.Prototype = new func1();
var obj = func2();
2. call 方法
obj.func.call(obj2[,"参数1",...])
把 obj2的相关方法 func 放到 obj 上运行!
function func1(name){
this.name = name;
this.say = function(argument1){
alert(this.name + argument1)
}
}
function func2(){
}
var obj1 = func1("name");
var obj2 = func2();
obj2.say.call(obj1, "ok");
3.apply 方法
与call只是传递的参数要以数组的形式传递不同,其余的一样
function func1(name){
this.name = name;
this.say = function(argument1){
alert(this.name + argument1)
}
}
function func2(){
func1.apply(this, ["argument1"]);
}
属性:
constructor: 对创建对象的函数的引用
Prototype: 原型(类型)
hasOwnProperty(property):判断对象是否有某个特定的属性
isPrototypeOf():判定该对象是否为另一个对象的原型!
instanceof(): 判定对象是否为另一个对象的类型
继承:call,apply
1.用原型实现:
function func1(){
//代码
}
function func2(){
// 代码
}
func2.Prototype = new func1();
var obj = func2();
2. call 方法
obj.func.call(obj2[,"参数1",...])
把 obj2的相关方法 func 放到 obj 上运行!
function func1(name){
this.name = name;
this.say = function(argument1){
alert(this.name + argument1)
}
}
function func2(){
}
var obj1 = func1("name");
var obj2 = func2();
obj2.say.call(obj1, "ok");
3.apply 方法
与call只是传递的参数要以数组的形式传递不同,其余的一样
function func1(name){
this.name = name;
this.say = function(argument1){
alert(this.name + argument1)
}
}
function func2(){
func1.apply(this, ["argument1"]);
}
相关文章推荐
- #笔记#圣思园 JavaWeb 第57讲——JS继承:对象冒充、call方法、apply方法、原型链方式、混合方式
- JS面向对象(3)之Object类,静态属性,闭包,私有属性, call和apply的使用,继承的三种实现方法
- JS面向对象(3)之Object类,静态属性,闭包,私有属性, call和apply的使用,继承的三种实现方法
- 静态属性,函数闭包,call/apply,继承
- [Object]继承(经典版)(一)对象冒充和Call
- javascript 中 apply(或call)方法的用途----对象的继承
- JavaScript原型、函数伪装(apply,call)、继承
- javascript 对象基础 继承机制实例 call() apply 方法!
- JavaScript原型、函数伪装(apply,call)、继承
- 函数内部属性 arguments、this 以及非继承而来的方法 call()和 apply()
- 理解ES6 第三章:对象 ---Object.assign给对象添加多个属性, super, 原型。。。
- 前端一道面试题,考察变量定义提升、this指针指向、运算符优先级、原型、继承、全局变量污染、对象属性及原型属性优先级
- javascript 对象及原型继承有关的属性:constructor、prototype、isPrototypeOf、instanceof、in 、hasOwnProperty 等等
- 用构造函数继承基类的属性、用原型对象继承基类的方法
- js中函数对象的方法,原型方法apply、call、bind、toString、toLocaleString、valueOf
- 继承:《原型和原型链(prototype 属性使您有能力向对象添加属性和方法。)》
- javascript基于原型链的继承及call和apply函数用法分析
- javascript封装类的技巧:具有私有成员、私有方法、特权属性、特权方法、原型对象、静态成员,最重要的是不会失去封装的优点,并且不影响继承
- javascript 对象及原型继承有关的属性:constructor、prototype、isPrototypeOf、instanceof、in 、hasOwnProperty 等等
- JS面向对象(3) -- Object类,静态属性,闭包,私有属性, call和apply的使用,继承的三种实现方法