簡體   English   中英

如何在javascript中將所有屬性破壞為本地let

[英]How to destruct all properties as local let in javascript

說我有一個對象:

const ob = { a : 1, b : 'hello world', c : 3, d : false, e : { zn : 'nested value' }};

我想要一個襯板,最好使用銷毀方法在本地范圍內獲取5個新變量。

//do something with ob
//now i want to have 5 const/let defined in local scope
// such as, a =1, b = 'hello world', c = 3, d = false, e = { zn : 'nested value' }

EDIT1:我有很長的鍵屬性,並且我想直接使用10個屬性,而沒有任何點,並且我發現寫10個冗長的變量名很無聊。

就像用對象樣式的語法包裝所需的標識符一樣簡單

const {a, b, c, d, e} = {a: 1, b: 'hello world', c: 3, d: false, e: {zn: 'nested value'}};
a; // 1
b; // "hello world"
// etc

注意,如果需要,您也可以進入數組或進入嵌套。

const [{f: {g}}] = [{f: {g: 1}}];
f; // undefined
g; // 1

此外,您可以在銷毀期間重命名標識符

const {old: now} = {old: 1};
old; // undefined
now; // 1

好吧,如果要縮短它們並將其分配給變量,一種方法是使用eval。

但是話又說回來,為什么需要將它們創建為變量?

 const ob = { a : 1, b : 'hello world', c : 3, d : false, e : { zn : 'nested value' }}; var i = 0; for (let key in ob) { eval(`var index${i} = "${ob[key]}"`); i++; } console.log(index0); console.log(index1); console.log(index2); 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM