IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> 【JavaScript】ES6 (JavaScript的新特性) -> 正文阅读

[JavaScript知识库]【JavaScript】ES6 (JavaScript的新特性)

1.简介

ES6, 全称 ECMAScript 6.0 ,是 JavaScript 的下一个版本标准,2015.06 发版。

2.声明与表达式

2.1 变量提升

JavaScript 中,函数及变量的声明都将被提升到函数的最顶部。

在这里插入图片描述
在ES6中,let没有变量提升。

console.log(a);  //ReferenceError: a is not defined
let a = "apple";
 
console.log(b);  //undefined
var b = "banana";

2.2 作用域

使用 var 关键字声明的变量不具备块级作用域的特性,它在 {} 外依然能被访问到。

let(const) 声明的变量只在 let (const)命令所在的代码块 {} 内有效,在 {} 之外不能访问。

2.3 const

const 用于声明一个或多个常量,声明时必须进行初始化,且初始化后值不可再修改。

2.4 var let const

varletconst
函数级作用域块级作用域块级作用域
变量提升没有变量提升没有变量提升
值可更改值可更改值不可更改

3.解构赋值

按照一定的模式,从数组或者对象中取出值,赋给变量。

3.1 数组解构赋值

   let [a, b, c] = [1, 2, 3];

3.2 对象解构赋值

    let person = {name:"小冰", age:21};
    let{name, age} = person;

4. 箭头函数

	() => {}
	const fn = () => {}

函数体只有一句话,并且代码的执行结果就是返回结果,则可以省略{ }。

    const fn = (num1, num2) => num1 + num2;
    console.log(fn(23, 45));

如果形参只有一个,则( )可以省略。

    const fn2 = num3 => num3;
    console.log(fn2(12));

在这里插入图片描述
箭头函数不绑定This,箭头函数没有自己的this关键字,如果在箭头函数中实验this,this关键字指向箭头函数定义位置中的this。

    <script type="text/javascript">
        function fn (){
            console.log(this);
            return () => {
                console.log("$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$")
                console.log(this)
            }
        }

        fn();// Window

        const obj = {name: "张三"};
        console.log("*************************************");
        const arrowFn = fn.call(obj);// {name: "张三"}
        arrowFn();
    </script>

5. 不定参数

不定参数用来表示不确定参数个数,形如,…变量名,由…加上一个具名参数标识符组成。具名参数只能放在参数组的最后,并且有且只有一个不定参数。

    <script type="text/javascript">
        const sum = (...args) => {
            let count = 0;
            args.forEach(item => count += item);
            return count;
        }
        console.log(sum(233, 129));
    </script>

不定参数与解构配合使用:

    <script type="text/javascript">
        let arr = ["张三", "李四", "王五"];
        let [s1, ... s2] = arr;
        console.log(s1);
        console.log(s2);
    </script>

在这里插入图片描述

6. 扩展运算符

扩展运算符拆分数组:

    <script type="text/javascript">
        let arr = ["a", "b", "c"];
        console.log(arr);
        console.log("a", "b", "c");
        console.log(...arr);
    </script>

在这里插入图片描述

扩展运算符合并数组:

        let arr1 = ["d", "e", "f"];
        let arr2 = ["h", "i", "j"];
        let arr3 = [...arr1, ...arr2];
        console.log(arr3);

在这里插入图片描述

合并数组的第二种方式:

        let arr1 = ["d", "e", "f"];
        let arr2 = ["h", "i", "j"];
        let arr4 = arr1.push(...arr2);

伪数组转换成真正的数组:

<body>
    <div>1</div>
    <div>2</div>
    <div>3</div>
    <div>4</div>
    <div>5</div>
    <div>6</div>
    <div>7</div>
    <script type="text/javascript">
        let arrDiv = document.getElementsByTagName("div");
        console.log(arrDiv);
        let arrReally = [...arrDiv];
        console.log(arrReally);
    </script>
</body>

在这里插入图片描述

7. Array扩展方法

7.1 from方法

    <script type="text/javascript">
        arrDiv = [12, 23, 34, 45, 56, 67];
        console.log(arrDiv);
        let arrReally = Array.from(arrDiv, item => item * 2);
        console.log(arrReally);
    </script>

在这里插入图片描述
该方法不仅能将伪数组转换成数组,而且能与箭头函数结合,对数组的元素进行运算。

7.2 find方法

        let arrFind = [{
            id: 1,
            name: "张三"
            }, {
            id: 2,
            name: "李四"
            }];
        console.log(arrFind.find(item => item.id === 2));

在这里插入图片描述

7.3 findIndex方法

        let arrTest = [10, 20, 30, 40];
        console.log(arrTest.findIndex(item => item > 15));

在这里插入图片描述

7.4 includes

在这里插入图片描述

8. 模板字符串

在这里插入图片描述

8.1解析变量

在这里插入图片描述

8.2 换行

在这里插入图片描述

8.3 调用函数

在这里插入图片描述

9. startsWith( )和 endsWith( )

在这里插入图片描述

10. repeat( )

在这里插入图片描述

11. set

在这里插入图片描述
在这里插入图片描述

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2021-09-26 10:04:39  更:2021-09-26 10:05:08 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/18 21:38:01-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码