原型链构造函数箭头函数se6数组去重
Posted juaoie
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了原型链构造函数箭头函数se6数组去重相关的知识,希望对你有一定的参考价值。
原型链
例子如下:
var arr = [1, 2, 3];
其原型链为:arr ----> Array.prototype ----> Object.prototype ----> null
同理我们创建一个函数也是:
function foo() { return 0; }
其原型链为:foo ----> Function.prototype ----> Object.prototype ----> null
由于Function.prototype
定义了apply()
等方法,因此,所有函数都可以调用apply()
方法。
很容易想到,如果原型链很长,那么访问一个对象的属性就会因为花更多的时间查找而变得更慢,因此要注意不要把原型链搞得太长。
构造函数
构造函数如果不写new
,这就是一个普通函数,它返回undefined
。但是,如果写了new
,它就变成了一个构造函数,它绑定的this
指向新创建的对象,并默认返回this。
也就是说,不需要在最后写return this;
。
用new Student()
创建的对象还从原型上获得了一个constructor
属性,它指向函数Student
本身。
箭头函数
x => x * x
上面的箭头函数相当于:
function (x) { return x * x; }
se6数组去重
function dedupe(array) { return Array.from(new Set(array)); } console.log(dedupe([1, 1, 2, 3])) //[1,2,3]
Array.form通过字符串创建一个数组
以上是关于原型链构造函数箭头函数se6数组去重的主要内容,如果未能解决你的问题,请参考以下文章