變數的解構賦值用途很多。
(1)交換變數的值
let x = 1;
let y = 2;
[x, y] = [y, x];
上面**交換變數x和y的值,這樣的寫法不僅簡潔,而且易讀,語義非常清晰。
(2)從函式返回多個值函式只能返回乙個值,如果要返回多個值,只能將它們放在陣列或物件裡返回。有了解構賦值,取出這些值就非常方便。
// 返回乙個陣列
function
example
() let [a, b, c] = example();
// 返回乙個物件
function
example
() ;
}let = example();
(3)函式引數的定義解構賦值可以方便地將一組引數與變數名對應起來。
// 引數是一組有次序的值
function f([x, y, z])
f([1, 2, 3]);
// 引數是一組無次序的值
function f()
f();
(4)提取json資料解構賦值對提取json物件中的資料,尤其有用。
let jsondata = ;
let = jsondata;
console.log(id, status, number);
// 42, "ok", [867, 5309]
上面**可以快速提取 json 資料的值。
(5)函式引數的預設值
jquery.ajax = function (url, ,
cache = true,
complete = function () {},
crossdomain = false,
global = true,
// ... more config
}) ;
指定引數的預設值,就避免了在函式體內部再寫var foo = config.foo || 『default foo』;這樣的語句。
(6)遍歷map結構任何部署了iterator介面的物件,都可以用for…of迴圈遍歷。map結構原生支援iterator介面,配合變數的解構賦值,獲取鍵名和鍵值就非常方便。
var map = new map();
map.set('first', 'hello');
map.set('second', 'world');
for (let [key, value] of map)
// first is hello
// second is world
如果只想獲取鍵名,或者只想獲取鍵值,可以寫成下面這樣。
// 獲取鍵名
for (let [key] of map)
// 獲取鍵值
for (let [,value] of map)
(7)輸入模組的指定方法載入模組時,往往需要指定輸入哪些方法。解構賦值使得輸入語句非常清晰。
const = require("source-map");
僅作為學習筆記,告知侵刪。
ES6解構賦值的用途
參考文件 1.交換變數的值 let x 1 let y 2 x,y y,x 2.從函式返回多個值 函式只能返回乙個值,如果要返回多個值,只能將它們放在陣列或物件裡返回。有了解構賦值,取出這些值就非常方便。返回乙個陣列 function example let arr a,b,c example ar...
ES6 解構賦值的6個用途
變數的解構賦值用途很多。1 交換變數的值let x 1 let y 2 x,y y,x 上面 交換變數x和y的值,這樣的寫法不僅簡潔,而且易讀,語義非常清晰。2 從函式返回多個值 函式只能返回乙個值,如果要返回多個值,只能將它們放在陣列或物件裡返回。有了解構賦值,取出這些值就非常方便。返回乙個陣列 ...
ES6 變數的解構賦值
es6允許 按照一定的模式,從陣列和物件中提取值,對變數進行賦值,這被稱為解構。結構賦值在實際開發中可以大量減少我們的 量,並且讓我們的程式結構更清楚。賦值解構已經看了好多遍了,但是每次記不住,今天來寫一篇部落格來加深印象 我覺得陣列的解構賦值的作用就是能夠同時給多個變數進行賦值,不用像以前那樣需要...