zoukankan      html  css  js  c++  java
  • 原型链、构造函数、箭头函数、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通过字符串创建一个数组

     

  • 相关阅读:
    使用高精度计算斐波那契数列 c++
    纪中9日T4 2298. 异或
    洛谷 P1416 攻击火星
    线段树小结
    纪中5日T3 1566. 幸运锁(lucky.pas/c/cpp)
    Title
    Title
    Title
    Title
    Title
  • 原文地址:https://www.cnblogs.com/Juaoie/p/9243383.html
Copyright © 2011-2022 走看看