ES6新特性:解构表达式

简介: 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学习(2)解构赋值
ES6学习(2)解构赋值
|
5月前
ES6解构赋值
本文介绍了ES6中解构赋值的用法,包括对象和数组的解构,展示了如何从复杂数据结构中提取需要的变量,以及使用重命名和嵌套解构来简化代码。
47 0
ES6解构赋值
|
6月前
es6 的解构赋值
【8月更文挑战第22天】
32 3
|
7月前
ES6 解构赋值【详解】
ES6 解构赋值【详解】
41 0
|
JavaScript 前端开发 网络架构
ES6 解构赋值
ES6 解构赋值
95 0
|
9月前
|
存储 算法 编译器
C++ 新特性 lamada表达式
C++ 新特性 lamada表达式
|
9月前
|
小程序
es6学习笔记(二)解构赋值
es6学习笔记(二)解构赋值
|
9月前
|
JavaScript 前端开发
JavaScript开发中ES6+新特性:使用解构赋值的好处是什么?
JavaScript开发中ES6+新特性:使用解构赋值的好处是什么?
114 2
|
JSON 数据格式
ES6系列笔记-解构赋值
ES6系列笔记-解构赋值
77 1
ES6语法: 解构赋值
ES6语法: 解构赋值
82 0

热门文章

最新文章