簡體   English   中英

打字稿 - 對象屬性應該是整數但是字符串?

[英]typescript - Object-property should be integer but is string?

我需要遍歷對象nodeIDs並找到特定值的鍵索引。

 private getNodeIndexByID(nodeIDs, id) {
   for (const [key, value] of Object.entries(nodeIDs)) {
     if (id === value) {
       return key;
     }
   }
 }

返回的鍵是數字 .. 現在我構建了一個新對象,其中保存了鍵索引

const index_source = this.getNodeIndexByID(nodeIDs, obj.source);
const index_target = this.getNodeIndexByID(nodeIDs, obj.target);

let my_obj = Object.create({}, { source: { value: index_source }, target: { value: index_target } });
out.push(my_obj);

現在out.sourceout.target的值是 typeOf STRING .. 為什么? ..我的意思是,數組索引是數字..我錯過了什么? .. 我需要它們是數字。

JavaScript 對象的鍵總是總是!)字符串,即使它們是使用數字鍵寫入的。

換句話說,

x[0] = 1

完全一樣

x["0"] = 1

如果您計算對象的鍵/值對,您將看到字符串鍵,因為 JavaScript 對象的鍵始終是字符串。

暫無
暫無

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

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