Javascript 意外行为

Javascript unexpected behaviors

在 Javascript 中有些行为我不理解 :

  1. 为什么 console.log(011666) 记录了 5046
  2. 为什么 typeof typeof 500 记录 string
  1. 0开头的数字被解释为八进制数。一个更简单的例子:

console.log(010);

  1. typeof 500 returns 一个字符串 'number'。字符串 'number' 的类型是 'string'.

console.log(typeof 500);
console.log(typeof 'number');