js继承
2019-04-17 本文已影响0人
陈舒艺
1.继承是使子类可以具有父类的属性和方法
2.所有对象都是由object()构造出来
3.继承通常要经过2次原型搜索

4.fun.call(thisArg, arg1, arg2, ...)
使用调用者提供的 this 值和参数调用该函数的返回值。若该方法没有返回值,则返回 undefined。
5.只有构造函数有 prototype,prototype只有1个功能:存放共有属性的地址
6.一个对象的proto指向它的构造函数prototype
-
Man.prototype.proto=Human.prototype
-
Man.prototype = new Human()
-
var f= function(){}
f.prototype = Human.prototype
Man.prototype = new f()
7.ES5&&ES6关于继承的写法

-
ES5写法方便理解,可操作性强
ES6
- ES6写法简洁方便,但是在原型上声明一个非函数就要这么写:
get s(){return '人类'}
8.mixin=object.assign()
9.柯里化 多个变量的函数,其中一个变量固定后得到的新函数就是偏函数,这个过程就叫柯里化
10.输入输出都是函数就是高阶函数