[英]Use key's value as key in key-value pair in Javascript
如何在JavaScript中將鍵值對的值用作另一個鍵值對中的鍵?
我想做以下事情:
var gizmos = {gizmo1: "G1"};
var things = {gizmos.gizmo1: "T1"};
因此,本質上是相等的:
var things = {"G1": "T1"};
像這樣:
var gizmos = {gizmo1: "G1"};
var things = {};
things[gizmos.gizmo1] = "T1";
作為對象初始值設定項(也稱為對象“文字”)的一部分,無法執行此操作,您必須在之后執行。
它起作用的原因是,在JavaScript中,您可以通過兩種方式訪問(獲取或設置)對象上的屬性:使用點分符號和文字 (例如foo.bar
,或使用方括號和字符串 (例如foo["bar"]
。 在后一種情況下,字符串不必是字符串文字,它可以是任何表達式的結果(在這種情況下,包括在另一個對象上的屬性查找)。
注意:如果在執行gizmos.gizmo1
后更改 gizmos.gizmo1
,則things[gizmos.gizmo1] = "T1";
行,它不會更改things
的屬性名稱。 沒有持久的鏈接,因為在things[gizmos.gizmo1] = "T1";
期間,使用gizmos.gizmo1
的值來確定屬性名稱things[gizmos.gizmo1] = "T1";
行(就像在其他任何表達式中一樣)。
var gizmos = {gizmo1: "G1"};
var things = {};
things[gizmos.gizmo1]="T1";
要獲取對象上給定鍵的值,請使用object["key"]
或object.key
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.