文章目录
JavaScript
的核心机制与特性(原型链、EventLoop
、宏微任务设计、数值精度限制)是理解其运行原理的关键。原型链实现继承,EventLoop 解决单线程异步调度,宏微任务划分优先级,数值精度限制源于二进制存储规则,需通过特定方法规避。
一、原型链:JavaScript 的继承基石
1. 核心结论
原型链是通过 __proto__
串联对象的继承机制,属性/方法查找沿链向上,最终指向 null
。
2. 详细解析
- 三要素关系:
function Person() { } const p = new Person(); // 关系:p.__proto__ === Person.prototype // Person.prototype.constructor === Person // Person.prototype.__proto__ === Object.prototype
- 继承实现:
- 对象通过
__proto__
访问原型属性和方法。 - 原型链终点:
Object.prototype.__proto__ === null
。
- 对象通过
- 修改原型的影响:
Person.prototype.say = function() { }; // 所有实例共享该方法(节省内存,但需注意引用类型属性共享问题)
- ES6 语法糖:
class Student