当前位置: 代码网 > it编程>编程语言>Javascript > ES6 13个新特性总结

ES6 13个新特性总结

2024年05月19日 Javascript 我要评论
1. let constlet 表示申明变量。const 表示申明常量。常量定义了就不能改了。对象除外,因为对象指向的地址没变。const在申明是必须被赋值。两者都为块级作用域。块级作用域与函数作用域

1. let const

let 表示申明变量。const 表示申明常量。

  • 常量定义了就不能改了。对象除外,因为对象指向的地址没变。
  • const在申明是必须被赋值。
  • 两者都为块级作用域。

块级作用域与函数作用域。任何一对花括号({和})中的语句集都属于一个块,在这之中定义的所有变量在代码块外都是不可见的,我们称之为块级作用域。函数作用域就好理解了,定义在函数中的参数和变量在函数外部是不可见的。

const a = 1
a = 0 //报错

2. 模块字符串``

可以使用反引号``来进行字符拼接。${}

3. 解构

可以使用{}来对数组和对象进行解构。

image

image

4. 函数的参数默认值

函数传参可以有默认值

// es6;
function printtext(text = 'default') {
    console.log(text);
}

5. spread / rest 操作符 ...

spread / rest 操作符指的是 ...,具体是 spread 还是 rest 需要看上下文语境。

  • 当被用于迭代器中时,它是一个 spread 操作符:迭代器 (iterator)是按照一定的顺序对一个或多个容 器 中的元素行进遍历的一种机制
function foo(x,y,z) {
  console.log(x,y,z);
}
 
let arr = [1,2,3];
foo(...arr); // 1 2 3
  • 当被用于函数传参时,是一个 rest 操作符:当被用于函数传参时,是一个 rest 操作符:
function foo(...args) {
  console.log(args);
}
foo( 1, 2, 3, 4, 5); // [1, 2, 3, 4, 5]

6. 箭头函数

  • 不需要 function 关键字来创建函数
  • 省略 return 关键字
  • this始终指向函数申明时所在作用域下的this值
//es5
var fun = function() {

}
//es6
var fn = () => {

}

7. for of

  • for of遍历的是键值对中的值
  • for in遍历的是键值对中的键

8. class类

es6 中支持 class 语法,不过,es6的class不是新的对象继承模型,它只是原型链的语法糖表现形式。

class student {
  constructor() {
    console.log("i'm a student.");
  }
 
  study() {
    console.log('study!');
  }
 
  static read() {
    console.log("reading now.");
  }
}
 
console.log(typeof student); // function
let stu = new student(); // "i'm a student."
stu.study(); // "study!"
stu.read(); // "reading now."

9. 导入导出

  • 导入improt
  • 导出export default

10. promise

promise 用于更优雅地处理异步请求。

  <script>
    new promise((resolve,reject) => {
      settimeout(function() {
        resolve('成功了!')
      },1000)
      // reject("失败了,wuwu")
    }).then(data => {
      console.log(data)
    }).catch(err => {
      console.log(err)
    })
  </script>

11. async/await

比promise更好的解决了回调地狱。

async function() {
  awiat fn()
}

12. symbol

新的基本类型

13. set集合

存储任何类型的唯一值,即集合中所保存的元素是不重复的。类数组结构。

arr = [1,2,3,1]
let arrnew = new set(arr)
arrnew = [1,2,3]

类数组不是数组,要转化为数组array.form(arrnew)这样arrnew才是数组了

(0)

相关文章:

  • javascript基础数据类型转换教程示例

    数值型转换为字符串类型方式说明案例tostring()转成字符串var num =1; alert ( num.tostring());string()强制转换 转成字符串var …

    2024年05月19日 编程语言
  • javascript数据类型基础示例教程

    js中的输入输出语句方法说明归属alert(msg)浏览器弹出警示框浏览器console.log(msg)浏览器控制台打印输出信息浏览器prompt(info)浏览器弹出输入框,用…

    2024年05月19日 编程语言
  • JavaScript入门初体验书写方式

    javascript历史布兰登艾奇( brendan eich ,1961年~)。神奇的大哥在1995年利用10天完成 javascript 设计。网景公司最初命名为 livesc…

    2024年05月19日 编程语言
  • JavaScript中的内置对象介绍

    一、对象的概念对象是一种特殊的数据类型(object)。拥有一系列的属性和方法。分为内置对象和自定义对象。二、string对象string对象用来支持对于字符串的处理。1、属性le…

    2024年05月19日 编程语言
  • JavaScript中变量的作用域详解

    一、变量的分类在javascript中变量分为两种:全局变量局部变量二、变量的作用域1、局部变量的作用域局部变量:在函数内部定义的变量称为局部变量,其作用域为该函数内部,在该函数外…

    2024年05月19日 编程语言
  • JavaScript自定义函数用法详解

    javascript中的函数分为两种:系统函数和自定义函数,这里主要讲解自定义函数。自定义函数1、语法:注意:传入的参数是可选的。例如:<!doctype html>&…

    2024年05月19日 编程语言

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com