Javascript对象属性:字符串还是整数?
Javascript object property: string or int?
假设我有以下对象:
var obj {
name: "Jack",
id: 4,
year: "2004"
}
我想遍历属性并打印出 属性 类型:
for (var i in obj) {
console.log(i + ' (' + (typeof i) + ') ' + obj[i];
}
问题是每种类型都显示为 string
:
name: (string) Jack
id: (string) 4
year: (string) 2004
如何将 "Jack"
和 "2004"
的类型输出为 string
和 4
作为 integer
/numeric
或其他类型?
您正在输出键的类型,而不是值。应该是:
for (var prop in obj) {
console.log(prop + ' (' + (typeof obj[prop]) + ') ' + obj[prop])
} ^^^^^^^^^
那会输出:
name (string) Jack
id (number) 4
year (string) 2004
假设我有以下对象:
var obj {
name: "Jack",
id: 4,
year: "2004"
}
我想遍历属性并打印出 属性 类型:
for (var i in obj) {
console.log(i + ' (' + (typeof i) + ') ' + obj[i];
}
问题是每种类型都显示为 string
:
name: (string) Jack
id: (string) 4
year: (string) 2004
如何将 "Jack"
和 "2004"
的类型输出为 string
和 4
作为 integer
/numeric
或其他类型?
您正在输出键的类型,而不是值。应该是:
for (var prop in obj) {
console.log(prop + ' (' + (typeof obj[prop]) + ') ' + obj[prop])
} ^^^^^^^^^
那会输出:
name (string) Jack
id (number) 4
year (string) 2004