ES6新特性:解构表达式

Posted 流楚丶格念

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ES6新特性:解构表达式相关的知识,希望对你有一定的参考价值。

文章目录

说明

1.数组解构

在es6之前,想要获取数组中的元素只能通过下标, es6中可以如下做

let arr = [1, 2, 3];
const [x, y, z] = arr;
console.log(x, y, z); //输出1,2,3

如果是下面情况,就只会输出1 2

const [x, y] = arr;
console.log(x, y); //输出1,2

当然,如果你只想拿其中的一个元素也是可以

const [a] = arr;
console.log(a);		// 输出1

2.对象解构

ES6中可以对对象进行解构,可以将对象中属性解构为变量,也可以对其属性进行取别名

const person = 
	name: "lili",
	age: 21,
	language: ["c", "c++", "java"]

let 
	name,
	age,
	language
 = person;
console.log(name, age, language);
let 
	name: l,
	age: g,
	language: h
 = person
console.log(l, g, h);


const也是也可以的

// 解构
const name, age, language = person;
console.log(name, age, language); // jack, 21, ['java','js','css']

// 取别名
const name:abc, age, language = person;
console.log(abc, age, language); // jack, 21, ['java','js','css']

实例

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        // 数组解构
        let arr = [1,2,3];
        let [a,b,c] = arr;
        console.log(a,b,c); // 1,2,3
		
        // 解构对象
        let person = 
            name: 'jack',
            age: 21,
            language: ['java','js','css']
        ;
        // const name, age, language = person;
        // console.log(name, age, language); // jack, 21, ['java','js','css']

        // 取别名
        const name:abc, age, language = person;
        console.log(abc, age, language); // jack, 21, ['java','js','css']

        // 字符串扩展
        let str = "hello.vue";
        console.log(str.startsWith("hello")); // true
        console.log(str.endsWith(".vue")); // true
        console.log(str.includes("e")); // true

        // 字符串模板
        let ss = `<div>
                <span>hello world</span>
            </div>`;
        console.log(ss);

        // 字符串插入变量和表达式。变量名写在 $中,$中可以放入javascript表达式

        function func() 
            return "this is a function"
        

        let info = `我是$abc, 今年$age了, 我想说: $func()`;
        console.log(info);
    </script>
</body>
</html>

以上是关于ES6新特性:解构表达式的主要内容,如果未能解决你的问题,请参考以下文章

ES6解构

ES6新特性:解构赋值(上)

ES6新特性总结解构赋值模板字符串Symbol

3--面试总结-es6

ES6新特性3:变量的解构赋值

ES6新特性3:变量的解构赋值