https://github.com/lydiahallie/javascript-questions#14-all-object-have-prototypes
所有对象都有原型(prototype),除了基础对象。什么是基础对象

最佳答案

基础对象是 Object.prototype :



console.log(Object.getPrototypeOf(Object.prototype));


大多数对象从某个原型(prototype)继承,这些原型(prototype)可能从其他某个原型(prototype)继承,最终以 Object.prototype 结尾。

console.log(
  Object.getPrototypeOf(Function.prototype) === Object.prototype,
  Object.getPrototypeOf(Number.prototype) === Object.prototype,
  Object.getPrototypeOf(Object.getPrototypeOf(5)) === Object.prototype
);


也就是说,您链接中的文本并不完全准确 - 可以创建最终不从 Object.prototype 继承的对象,例如:

const obj = Object.create(null);
console.log(Object.getPrototypeOf(obj));


这样做可以避免(可能是不寻常的) Object.prototype 方法的名称冲突,这可以是 cause bugs

关于javascript - 什么是javascript中的基本对象,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56659303/

10-11 23:25
查看更多