typeof 2D数组即将成为String。为什么?

时间:2019-02-27 06:23:14

标签: javascript html arrays string function

  • 我有一些东西似乎是二维数组。
  • typeof某些数组将始终返回object
  • 那么,为什么在下面的示例中,返回类型为string

<script>

  var x = [typeof x, typeof y][1];
  console.log(typeof x);

</script>

3 个答案:

答案 0 :(得分:2)

[typeof x, typeof y]的值为["undefined", "undefined"][typeof x, typeof y][1]的值为"undefined"

答案 1 :(得分:1)

typeof <expression>的值为字符串,所以

[typeof x, typeof y]

无论xy是什么,都将解析为类似的数组

[<someString>, <someString>]

访问该数组的第[1]个索引将为您提供这些字符串之一,因此typeof <someString>的结果为'string'

答案 2 :(得分:1)

好吧,<img>返回一个字符串,因此任何typeof也将是一个字符串:

typeof typeof

在上面的代码中,var x = [typeof x, typeof y][1]; //x is undefined when this is run console.log(typeof x); //typeof "undefined" == string 等于[typeof x, typeof y]

这是一个简单的演示:

["undefined", "undefined"]