以下为ChatGPT自动生成的解答,正确与否请自行判断。

BFE.devAI解答 - JavaScript 小测验
15. instanceOf

代码会输出以下内容:

object
false
number
false
false
false
true
boolean
false
false
false
true
true
true
true

解释:

  • typeof null 返回 object,这是 JS 的一个历史遗留问题。实际上,null 应该是一个原始值,而不是对象。
  • null instanceof Object 返回 false,因为 null 不是对象,它是一个原始值。
  • typeof 1 返回 number,因为 1 是一个数字类型的原始值。
  • 1 instanceof Number 返回 false,因为 1 是一个数字类型的原始值,而非 Number 的实例。
  • 1 instanceof Object 返回 false,因为 1 是一个数字类型的原始值,而非对象。
  • Number(1) instanceof Object 返回 false,因为 Number(1) 返回的是一个数字类型的原始值,而非对象。
  • new Number(1) instanceof Object 返回 true,因为 new Number(1) 创建了一个 Number 的实例,它是一个对象。
  • typeof true 返回 boolean,因为 true 是一个布尔类型的原始值。
  • true instanceof Boolean 返回 false,因为 true 是一个布尔类型的原始值,而非 Boolean 的实例。
  • true instanceof Object 返回 false,因为 true 是一个布尔类型的原始值,而非对象。
  • Boolean(true) instanceof Object 返回 false,因为 Boolean(true) 返回的是一个布尔类型的原始值,而非对象。
  • new Boolean(true) instanceof Object 返回 true,因为 new Boolean(true) 创建了一个 Boolean 的实例,它是一个对象。
  • [] instanceof Array 返回 true,因为 [] 是一个数组对象。
  • [] instanceof Object 返回 true,因为 [] 是一个对象,所有的数组都是对象。
  • (() => {}) instanceof Object 返回 true,因为 () => {} 是一个函数对象。