来自 Java 背景,我正在尝试理解 javascript。
请让我知道这些是否正确。
- 就像在java中一样,有一个至高无上的对象,所有其他对象都继承自该对象。
- 原型属性就像一个指向父对象的指针(java中的类)
- 对于“Object”对象,原型为空。
- 原型属性的值是表示对象命名法的字符串,而不是像 C 中的指针。指针概念是使用隐藏属性实现的,[[PROTOTYPE]] 在脚本中无法访问。
我正在使用 node.js 而不是浏览器来学习 JS。我试过了,
var human = Object.create(null); // same as var human;
console.log(Object.getPrototypeOf(human)); //null
var man = Object.create(human);
console.log(Object.getPrototypeOf(man));
//{}
//expected 'human'
var person = Object.create(Object.prototype); // same as var person = {}
console.log(Object.getPrototypeOf(person));
//{}
//expected 'object'