ES6中展开符号有什么用
小编给大家分享一下ES6中展开符号有什么用,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!
创新互联建站从2013年成立,是专业互联网技术服务公司,拥有项目成都网站建设、网站设计网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元红寺堡做网站,已为上家服务,为红寺堡各地企业和个人服务,联系电话:18982081108
概述
展开符号真的是一个非常好用的东西,我常用于字符串分割、数组合并、数组拷贝、对象合并、对象拷贝。
0x001 语法
...iterableObj
0x002 函数调用的时候参数展开
这是在函数调用的时候,将参数展开,和剩余参数有区别,剩余参数是在函数声明中使用
myFunction(...iterableObj);
案例
function add(a, b){ return a + b } add(...[1,2]) // 相当于 add(1,2) -> 3
数组声明展开
可用于数组合并
[...[1,2,3],4] // 相当于[1,2,3].push(4) -> [1,2,3,4] [...'1234'] // 相当于 '1234'.split("")
对象展开
可用于对象合并、对象拷贝
{...{name:1},age:2} // 相当于 Objeact.assign({},{name:1},{age:2}) -> {name:1,age:2} {...{name:1}} // 相当于 Object.assign({},{name:1}) -> {name:1}
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 });
看完了这篇文章,相信你对ES6中展开符号有什么用有了一定的了解,想了解更多相关知识,欢迎关注创新互联行业资讯频道,感谢各位的阅读!
文章标题:ES6中展开符号有什么用
网站路径:http://cdiso.cn/article/ieojjp.html