ES6 学习笔记2

  1. 模板字符串使用

反引号(`)里面使用 ${}调用json参数;

配合 map方法和 箭头函数遍历数组;

html 复制代码
let resultObj = objs.map((item,index) =>(
        `<div class='bd'>
            <div class='item'>
                <div>${item.value}</div>
                <div>${index}</div>
                <div>常量</div>
            </div>
        </div>`
    ));
$("#id").html(resultObj);
  1. 数组扩展运算符 三个点(...)

‌1. 数组扩展‌:可以将数组元素展开成单独的元素

使用扩展运算符可以将一个数组拆分为多个元素:

let parts = 'a', 'b';

let sentence = 'c', ...parts, 'd', 'e';

// sentence 是 "c", "a", "b", "d", "e"
2. 对象扩展,用于复制对象的可枚举属性:

使用对象扩展时,如果对象中有相同的属性名,后面的属性会覆盖前面的属性。

let obj1 = { foo: 'bar', x: 42 };

let obj2 = { foo: 'baz', y: 13 };

let clonedObj = { ...obj1 };

// clonedObj 是 { foo: "bar", x: 42 }

let mergedObj = { ...obj1, ...obj2 };

// mergedObj 是 { foo: "baz", x: 42, y: 13 },
let arr1 = 0, 1, 2;
let arr2 = 3, 4, 5;
arr1.push(...arr2);

  1. 函数调用

在函数调用时,可以使用扩展运算符将数组作为参数传递给该函数:

function sum(x, y, z) {

return x + y + z;

}

const numbers = 1, 2, 3;

console.log(sum(...numbers)); // 使用扩展运算符传递数组元素作为参数,输出 6

在函数调用中,扩展运算符允许你将数组转换为参数列表,这在处理不定数量的参数时特别有用。应用

1)复制数组

const a1 = 1, 2;

// 写法一

const a2 = ...a1;

// 写法二

const ...a2 = a1;

2).合并数组

const arr1 = 'a', 'b';

const arr2 = 'c';

const arr3 = 'd', 'e';

// ES5 的合并数组

arr1.concat(arr2, arr3);

// 'a', 'b', 'c', 'd', 'e'

// ES6 的合并数组

...arr1, ...arr2, ...arr3

// 'a', 'b', 'c', 'd', 'e'

相关推荐
linux_cfan4 分钟前
videojs v10 源代码系列解读:32 · Reactor 模型:信号驱动的状态机
前端·javascript·音视频
dadaobusi13 分钟前
学习:chiesel,scala
学习·fpga开发·scala
福兮说16 分钟前
Base64 遇上中文和 emoji:btoa 报错、解出一串 %E7、URL 里加号变空格,六个坑一次说清
前端·javascript·base64·编码
IMPYLH39 分钟前
HTML 的 <title> 元素
前端·javascript·html
开开心心就好43 分钟前
视频模糊怎么修复?免费工具支持批量处理
java·前端·人工智能·智能手机·pdf·excel
变与不变80644 分钟前
jspost请求详解
前端·javascript
派小心.1 小时前
React StrictMode埋点双执行的验收方法
前端·前端框架
IT_陈寒1 小时前
Python的GIL锁让我把多线程代码全重写了!
前端·人工智能·后端
艾莉丝努力练剑1 小时前
【AI大模型接入SDK】ChatSDK 集成测试概述
jvm·c++·人工智能·学习·面试·集成测试·sdk
艾莉丝努力练剑2 小时前
【AI大模型接入SDK】ChatSDK:CMake构建静态库完整实现
java·开发语言·网络·c++·人工智能·学习·sdk