ES6新增东西

变量:

let  块级变量

const 常量变量

----------------------------------------------

箭头函数:

箭头函数为 Javascript 语言增色不少。它使得代码更简洁

------------------------------------------------

字符串:

几个方便的方法被添加到 String 的原型中:

my string'.startsWith('my'); //true

'my string'.endsWith('my'); // false

'my string'.includes('str'); // true

---创建重复字符串的方法

'my '.repeat(3); // 'my my my ' 

----------------------------------------------

模板字符串:

et name = 'John',

   apples = 5,

   pears = 7,

   bananas = function() { return 3; }

 

console.log(`This is ${name}.`);

----------------------------------------------

数组:

 Array.from 类数组和可遍历对象 中 创建 Array 的实例

类数组对象示例包括:

  • 函数中的 arguments;

  • 由 document.getElementByTagName() 返回的 nodeList;

  • 新增加的 Map 和 Set 数据结构。

  • let itemElements = document.querySelectorAll('.items');

    let items = Array.from(itemElements);

    items.forEach(function(element) {

        console.log(element.nodeType)

    });

在上面的例子中,可以看到 items 数组拥有 forEach 方法,该方法是 itemElements 集合所不具备的。

----

Array.from 的一个有趣的特性是它的第二个可选参数mapFunction 。该参数允许你通过一次单独调用创建一个新的映射数组。

 

let navElements = document.querySelectorAll('nav li');

let navTitles = Array.from(navElements, el => el.textContent);

Array.of 是 new Array() 的更优选择

let x = new Array(3); // [undefined, undefined, undefined]

let y = Array.of(8); // [8]

几个方法被添加到 Array 的原型上:

  • find 返回回调返回 true 的第一个元素

  • findIndex 返回回调函数返回 true的第一个元素的下标

  • fill 用所给参数“覆盖”数组的元素。

[5, 1, 10, 8].find(n => n === 10) // 10

 

[5, 1, 10, 8].findIndex(n => n === 10) // 2

 

[0, 0, 0].fill(7) // [7, 7, 7]

[0, 0, 0, 0, 0].fill(7, 1, 3) // [0, 7, 7, 0, 0]

----------------------------------------------

Math

Math 对象新增了几个方法。

 

  • Math.sign 返回数字的符号,结果为 1、-1 或 0。

  • Math.trunc 返回无小数位的数字。

  • Math.cbrt 返回数字的立方根。

Math.sign(5); // 1

Math.sign(-9); // -1

 

Math.trunc(5.9); // 5

Math.trunc(5.123); // 5

 

Math.cbrt(64); // 4

--------------------------------------------------

模块

在 ES6 的模块语法中。模块设计围绕 export 和 import 关键词

现在让我们看一个包含两个模块的例子:

export function sum(x, y) {

   return x + y;

}

export var pi = 3.141593;

// app.js

 

import { sum, pi } from "lib/math";

console.log('2π = ' + sum(pi, pi));

 

-------------------------------------------------------

类的创建围绕 class 和 constructor 关键词。

以下是个简短的示例:

class Vehicle {

   constructor(name) {

      this.name = name;

      this.kind = 'vehicle';

   }

   getName() {

      return this.name;

   }  

}

 

// Create an instance

let myVehicle = new Vehicle('rocky');

注意类的定义不是一般的对象,因此,类的成员间没有逗号

---

创造一个类的对象时,需要使用 new 关键词。继承一个基类时,使用 extends

class Car extends Vehicle {

   constructor(name) {

      super(name);

      this.kind = 'car'

   }

}

 

let myCar = new Car('bumpy');

 

myCar.getName(); // 'bumpy'

myCar instanceof Car; // true

myCar instanceof Vehicle; //true

 

参考文献:

https://www.cnblogs.com/ws-zhangbo/p/5629706.html

©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页