Function.prototype.bind
任何函数都可以绑定bind,得到一个新的函数,函数内部的this为bind传入的第一个参数
var fn3 = obj1.fn.bind(obj2)
fn3()
使用call和apply设置this
fn4.call(obj4,3,4)
fn4.apply(obj4,[3,4])
var arr = [1,2,7,4]
Math.max(1,2,7,4)
console.log(Math.max.apply(null,arr))
function joinStr(){
return [].join.apply(arguments,'-')
}
arguments 为类数组对象
instanceof 判断一个对象是不是某个类型的实例
继承:一个对象直接使用另一对象的属性和方法
- 属性获取:对象属性的获取是通过构造函数的执行,我们在一个类中执行另一个类的构造函数,就可以把属性赋值到自己内部,但是我们需要把环境改到自己作用域内,这就要借助函数call
function Male(name,sex,age){
Person.call(this,name,age)
this.sex = sex
}
- 对象继承
Student.prototype = Object.create(Person.prototype)
//Student.prototype._proto_ = Person.prototype
Student.prototype.constructor = Student
-
hasOwnProperty