變數的解構賦值用途

2021-09-13 19:01:10 字數 1535 閱讀 8010

let x = 1;

let y = 2;

[x, y] = [y, x];

上面**交換變數x和y的值,這樣的寫法不僅簡潔,而且易讀,語義非常清晰。

函式只能返回乙個值,如果要返回多個值,只能將它們放在陣列或物件裡返回。有了解構賦值,取出這些值就非常方便。

// 返回乙個陣列

function example()

let [a, b, c] = example();

// 返回乙個物件

function example() ;

}let = example();

解構賦值可以方便地將一組引數與變數名對應起來。

// 引數是一組有次序的值

function f([x, y, z])

f([1, 2, 3]);

// 引數是一組無次序的值

function f()

f();

解構賦值對提取 json 物件中的資料,尤其有用。

let jsondata = ;

let = jsondata;

console.log(id, status, number);

// 42, "ok", [867, 5309]

上面**可以快速提取 json 資料的值。

jquery.ajax = function (url, ,

cache = true,

complete = function () {},

crossdomain = false,

global = true,

// ... more config

} = {}) ;

指定引數的預設值,就避免了在函式體內部再寫var foo = config.foo || 『default foo』;這樣的語句。

任何部署了 iterator 介面的物件,都可以用for…of迴圈遍歷。map 結構原生支援 iterator 介面,配合變數的解構賦值,獲取鍵名和鍵值就非常方便。

const 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)

載入模組時,往往需要指定輸入哪些方法。解構賦值使得輸入語句非常清晰。

const  = require("source-map");

變數的解構賦值用途

1.交換變數的值 let x 1 let y 2 x,y y,x 2.從函式返回多個值 函式只能返回乙個值,如果要返回多個值,只能將他們放在陣列或物件裡返回。有了解構賦值,取出這些值就非常方便。返回乙個陣列 function example let a,b,c example 返回乙個物件 func...

變數的解構賦值及用途

一 陣列的解構賦值 1 基本用法 完全解構 let a 1 let b 2 let c 3 可以寫成 let a,b,c 1,2,3 不完全解構 等號左邊的模式,只匹配一部分的等號右邊的陣列,解構依然成功 2 預設值 解構解析允許指定預設值 如 let x,y b a x a y b 注意 只有當乙...

解構賦值的用途

變數的解構賦值用途很多。1 交換變數的值 let x 1 let y 2 x,y y,x 上面 交換變數x和y的值,這樣的寫法不僅簡潔,而且易讀,語義非常清晰。2 從函式返回多個值 函式只能返回乙個值,如果要返回多個值,只能將它們放在陣列或物件裡返回。有了解構賦值,取出這些值就非常方便。返回乙個陣列...