通过javascript对象循环将键转换为字符串
Looping through javascript object converts keys to string
当我在Javascript中循环遍历对象以提取其键时,为什么键在打算为整数时转换为字符串?
obj = {1:'a', 2:'b'};
arr = [];
for(var key in obj){
if (obj.hasOwnProperty(key)){
arr.push(key);
}
}
现在arr
是[ "1", "2" ]
而不是[1, 2]
不是循环在转换键;关键字只能是字符串。您不能有任何其他类型的密钥。如果你的键不是字符串,JavaScript会在你使用它作为属性名时将它转换为字符串。
考虑:
key = {
toString: function () { return "Blah" }
};
myObject = {}
myObject[key] = "value";
// writes "Blah"
document.write(Object.keys(myObject));
注意,如果您没有提供toString
,键将是字符串"[object Object]"
。
meagar所说的是正确的,但如果出于某种原因你想要数字,你可以用加号将它们转换为前缀;
obj = {1:'a', 2:'b'};
arr = [];
for(var key in obj){
if (obj.hasOwnProperty(key)){
arr.push(+key);
}
}
console.log(arr)
说,你可能有兴趣看看对象。键方法
相关文章:
- 如何使用JQuery在Javascript中转换字符串中的HTML元素
- 将JSON插入MongoDB中,自动转换字符串中的日期
- 以点表示法转换字符串以获取对象引用
- 在 JavaScript 中转换字符串 11/28/2014 11:00 AM 到现在
- 为什么在主干的字符串数组中转换字符串数组
- 如何简单地转换字符串
- AngularJS如何转换字符串“;yyyyMMdd”;迄今为止
- 如何防止htmlspecialchar(PHP)转换字符串中的整数
- 刷新Aurelia中的i18n转换字符串插值
- 发布时禁用转换字符串
- 转换字符串货币
- 在javascript ajax调用中转换字符串到数组
- 转换字符串包含时间到24小时的时间,我可以做数学与- jQuery
- IE javascript引擎在转换字符串到日期时呈现NaN
- 如何转换字符串“a,b,c,d……”成a.b (c, d . .);来执行
- 如何在javascript中转换字符串到日期格式
- 如何在嵌套数组中转换字符串数组
- 在javascript中转换字符串日期
- 转换字符串在印度格式的javascript
- Javascript转换字符串到数组的对象