[英]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.source
和out.target
的值是 typeOf STRING .. 為什么? ..我的意思是,數組索引是數字..我錯過了什么? .. 我需要它們是數字。
JavaScript 對象的鍵總是(總是!)字符串,即使它們是使用數字鍵寫入的。
換句話說,
x[0] = 1
完全一樣
x["0"] = 1
如果您計算對象的鍵/值對,您將看到字符串鍵,因為 JavaScript 對象的鍵始終是字符串。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.