您好,登錄后才能下訂單哦!
小編給大家分享一下ES6中展開符號有什么用,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
展開符號真的是一個非常好用的東西,我常用于字符串分割、數組合并、數組拷貝、對象合并、對象拷貝。
...iterableObj
這是在函數調用的時候,將參數展開,和剩余參數有區別,剩余參數是在函數聲明中使用
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}
字符串/數組展開
源碼
[...'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中展開符號有什么用有了一定的了解,想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。