我对javascript来说是全新的,对整个编程来说还是相对较新的。我一直在理解javascript的机制,但是在以下情况下我很困惑:

var dataTypes = {
  string1: "Test",
  string2: "Test",
  number1: 4,
};

console.log(typeof dataTypes.number1);
console.log(" ");

for (var x in dataTypes) {
  console.log(typeof x);
  if ((typeof x) === "string") {
    console.log(dataTypes[x]);
  } else {
    //
  }
}


运行此命令时,控制台显示以下内容:

number

string
Test
string
Test
string
4


我很困惑dataTypes.number1如何从数字数据类型变成字符串。如果有人能花时间详细说明我做错了什么并加以解释,那将是很棒的。

最佳答案

您的变量x是与dataTypes中的每个键/值对关联的键(而不是值)。因此,始终是字符串。

您需要检查typeof dataTypes[x]

关于javascript - 更改JavaScript中的数据类型,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29081856/

10-12 01:23