参考:https://www.jianshu.com/p/ac1787f6c50f

变量声明:const 与 let

  const:常量,必须初始化值   let:变量

  格式:const 变量A = "值"     let 变量B = "值"

  作用域:两者都为块级作用域

模板字符串:

  示例:

let a = "值1"

console.log(`值:${a}`)  // 输出:  值:值1

箭头函数:

  特点:1. 不需要function关键字来创建函数

     2. 当函数仅有一个表达式的时候可以省略 { } 与 return关键字

     3. 当函数只有一个参数的时候,可以省略 ()

  示例:

// 当函数主题只有一个表达式时,可以省略 {  }
let fn1 = (a, b) => a + b
// 箭头函数
let fn2 = () => {
// 函数内容
}
// 只有一个参数可以省略 ()
let fn3 = a => {
// 函数内容
}

函数运行参数默认值

  注意:默认值参数需要写在参数最后面

  示例:

// text2有默认值,需要写在参数的最后
function printText(text1, text2 = "123", text3 = "456") {
console.log(`${text1}-${text2}-${text3}`)
} printText('0000') // 输出:0000-123-456

Spread/Rest操作符( ... )

  示例:

// 示例1:当被用于迭代器中时,它是一个 Spread 操作符
function foo(x,y,z) {
console.log(x,y,z);
} let arr = [1,2,3];
foo(...arr); // 1 2 3 // 示例2:当被用于函数传参时,是一个 Rest 操作符:当被用于函数传参时,是一个 Rest 操作符:
function foo1(...args) {
console.log(args);
}
foo1( 1, 2, 3, 4, 5); // [1, 2, 3, 4, 5]

支持二进制和八进制字面量

let oValue = 0o10;
console.log(oValue); // 8 let bValue = 0b10; // 二进制使用 `0b` 或者 `0B`
console.log(bValue); // 2

对象与数组的解构

// 对象
const student = {
name: 'Sam',
age: 22,
sex: '男'
}
// 数组
// const student = ['Sam', 22, '男']; // ES5;
const name = student.name;
const age = student.age;
const sex = student.sex;
console.log(name + ' --- ' + age + ' --- ' + sex); // ES6
const { name, age, sex } = student; // 解构
console.log(name + ' --- ' + age + ' --- ' + sex);

for...of 与 for ... in

  for...of 用于遍历一个迭代器,如数组:

let letters = ['a', 'b', 'c']
letters.size = 3for (let letter of letters) {
console.log(letter)
}// 结果: a, b, c

  for...in 用来遍历对象中的属性:

 let stus = ["Sam", "22", "男"]
for (let stu in stus) {
console.log(stus[stu])
} // 结果: Sam, 22, 男

以下两个不是特别了解:

   对象超类 super

   类 class  语法糖

一个人应养成信赖自己的习惯,即使在最危急的时候,也要相信自己的勇敢与毅力。——拿破仑

JavaScript之ES6常用新特性的更多相关文章

  1. ES6常用新特性

    https://segmentfault.com/a/1190000011976770?share_user=1030000010776722 该文章为转载文章!仅个人喜好收藏文章! 1.前言 前几天 ...

  2. JavaScript:ES6的新特性

    1.关键字 const:修饰常量.ES6之前只有变量的声明字段var,ES6开始引入常量关键字,被修饰的变量无法被修改. <script type="text/javascript&q ...

  3. es6/es7/es8常用新特性总结(超实用)

    本文标题有误导性,因为我其实想写node8的新特性,说实话一下子从node v1.x跳跃到node 8.x+ 真有点受宠若惊的感觉.一直觉得node 数组. 对象.序列等的处理没有python方便,因 ...

  4. ES6、7、8常用新特性总结(超实用)

    ES6常用新特性 1. let && const let 命令也用于变量声明,但是作用域为局部 { let a = 10; var b = 1; } 在函数外部可以获取到b,获取不到a ...

  5. ES6 && ECMAScript2015 新特性

      ECMAScript 6(以下简称ES6)是JavaScript语言的下一代标准.因为当前版本的ES6是在2015年发布的,所以又称ECMAScript 2015. 也就是说,ES6就是ES201 ...

  6. HTML5的常用新特性你必须知道

    HTML5的常用新特性你必须知道 1 新的 声明 HTML 有多个不同的版本,只有完全明白页面中使用的确切 HTML 版本,浏览器才能完全正确地显示出 HTML 页面.这就是 的用处. 不是 HTML ...

  7. 细解JavaScript ES7 ES8 ES9 新特性

    题记:本文提供了一个在线PPT版本,方便您浏览 细解JAVASCRIPT ES7 ES8 ES9 新特性 在线PPT ver 本文的大部分内容译自作者Axel Rauschmayer博士的网站,想了解 ...

  8. Java8常用新特性实践

    前言: 时下Oracle开速迭代的Java社区以即将推出Java10,但尴尬的是不少小中企业仍使用JDK7甚至JDK6开发. 从上面列出的JDK8特性中我们可以发现Java8的部分特性很明显的是从Sc ...

  9. JS - ECMAScript2015(ES6)新特性

    友情提示:本文仅mark几个常用的新特性,详细请参见:ES6入门 - ryf: 碎片 var VS let VS const var:声明全局变量, let:声明块级变量,即局部变量 const:声明 ...

随机推荐

  1. Morphological Image Processing

    目录 概 reflection and translation Erosion and Dilation Erosion 示例 skimage.morphology.erosion dilation ...

  2. ON LARGE BATCH TRAINING FOR DEEP LEARNING: GENERALIZATION GAP AND SHARP MINIMA

    目录 概 主要内容 一些解决办法 Keskar N S, Mudigere D, Nocedal J, et al. On Large-Batch Training for Deep Learning ...

  3. IM2605说明书| InmicroIM2605|IM2605芯片

    IM2605描述 IM2605集成了一个同步4开关Buck-Boost变换器,在输入电压小于或大于输出电压时保持输出电压调节.当输入电压足够大于输出电压时,它作为Buck变换器工作,并随着输入电压接近 ...

  4. 《python-美藏篇》1.可迭代、迭代器与生成器

    首先区分可迭代对象(Iterable).迭代器(Iterator) 可迭代对象:包含__iter__方法的对象为可迭代对象,如List.Tuple.Dictionary 迭代器:包含__iter__. ...

  5. WPF中修改ListBox项的样式病修改选中项的背景颜色

    最终效果: 1 <ListBox Name="cmb"> 2 <!--修改颜色--> 3 <ListBox.Resources> 4 <! ...

  6. 深入 Laravel 内核之装饰模式

    装饰模式核心内容: 装饰模式可以在不影响组件对象的情况下,以动态.透明的方式从外部给对象添加功能: 装饰器模式的本质就是动态组合.动态是手段,组合是目的.装饰模式是通过把复杂的功能简单化.分散化,在运 ...

  7. mysql数据库忘记root密码怎么办?

    mysql数据库忘记root密码怎么破解和修改 1.停止数据库的运行 [root@localhost ~]# /etc/init.d/mysqld stop 或者[root@localhost ~]# ...

  8. JWT原理及实现

    wt(JSON Web Tokens),是一种开发的行业标准 RFC 7519 ,用于安全的表示双方之间的声明.目前,jwt广泛应用在系统的用户认证方面,特别是现在前后端分离项目. 1. jwt认证流 ...

  9. Leetcode算法系列(链表)之两数相加

    Leetcode算法系列(链表)之两数相加 难度:中等给出两个 非空 的链表用来表示两个非负的整数.其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字.如果,我们将 ...

  10. vue爬坑之路(插件安装)

    npm install vue-table-with-tree-grid --save import ZkTable from 'vue-table-with-tree-grid' Vue.use(Z ...