摘要:概述展开符号真的是一个非常好用的东西,我常用于字符串分割数组合并数组拷贝对象合并对象拷贝。
0x000 概述
展开符号真的是一个非常好用的东西,我常用于字符串分割、数组合并、数组拷贝、对象合并、对象拷贝。
0x001 语法...iterableObj0x002 函数调用的时候参数展开
这是在函数调用的时候,将参数展开,和剩余参数有区别,剩余参数是在函数声明中使用
myFunction(...iterableObj);
案例
function add(a, b){ return a + b } add(...[1,2]) // 相当于 add(1,2) -> 30x003 数组声明展开
可用于数组合并
[...[1,2,3],4] // 相当于[1,2,3].push(4) -> [1,2,3,4] [..."1234"] // 相当于 "1234".split("")0x004 对象展开
可用于对象合并、对象拷贝
{...{name:1},age:2} // 相当于 Objeact.assign({},{name:1},{age:2}) -> {name:1,age:2} {...{name:1}} // 相当于 Object.assign({},{name:1}) -> {name:1}0x005 babel 翻译
字符串/数组展开
源码
[..."1234"]
翻译后
function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } } [].concat(_toConsumableArray("1234"));
对象展开
源码
let a={...{name:1}}
翻译后
var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; var a = _extends({ name: 1 });
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/99170.html
摘要:概述是一个迭代可迭代对象的方式,可迭代对象包括对象等等语法迭代数组迭代字符串迭代迭代迭代迭代集合总结只能迭代可迭代对象 0x000 概述 for...of是一个迭代可迭代对象的方式,可迭代对象包括Array、Map、Set、String、TypedArray、arguments 对象等等 0x001 语法 for(variable of iterable){ // statem...
摘要:概述也是一个新的数据结构,在中其实也经常用到,比如下面的栗子,我们经常这么使用一个对象,与其说他是对象,其实他更像一个,但是比起真正的,这个还是有点弱了,初始化初始化一个有一个可选的参数,该参数必须是一个可迭代对象,可迭代对象包括和用户定 0x000 概述 Map也是一个新的数据结构,在js中其实也经常用到,比如下面的栗子,我们经常这么使用一个对象,与其说他是对象,其实他更像一个Map...
摘要:概述反射说起来和上一章节的代理基本一样,只是使用的方式不同,设计理念也不同。 0x000 概述 反射说起来和上一章节的代理基本一样,只是使用的方式不同,设计理念也不同。 反射提供了一系列的静态函数,可以使用Reflect.function_name(...prams)调用,这一系列的方法和代理的处理器对象方法一致 0x001 apply 语法 Reflect.apply(targ...
摘要:概述模板字符串出来以后,单引号双引号哪个好的争论可以退出历史舞台的,模板字符串的最好语法单行文本多行文本内嵌表达式标签语法不太喜欢单行文本完全不单引号和双引号,当然,转义是不可避免的,有所得必有所失去嘛多行文本,也不用关系换行的编码转化问题 0x000 概述 模板字符串出来以后,单引号、双引号哪个好的争论可以退出历史舞台的,模板字符串的`最好! 0x001 语法 单行文本 `str...
摘要:概述是一个新的数据结构,和其他语言的特性差不多,当然,作为中的,他还是有一些属于的特点。 0x000 概述 Set是一个新的数据结构,和其他语言的特性差不多,当然,作为js中的Set,他还是有一些属于js的特点。 0x001 初始化 new Set([iterable]); 初始化一个Set有一个可选的参数,这个参数必须是一个可迭代的对象,可迭代对象包括String、Array、Arr...
阅读 1184·2023-04-25 20:31
阅读 3688·2021-10-14 09:42
阅读 1460·2021-09-22 16:06
阅读 2598·2021-09-10 10:50
阅读 3490·2021-09-07 10:19
阅读 1752·2019-08-30 15:53
阅读 1151·2019-08-29 15:13
阅读 2803·2019-08-29 13:20