各位观众,欢迎来到今天的“JavaScript 冷知识大赏”!我是你们的老朋友,Bug Hunter。今天我们要聊的是一个比较前沿,甚至可能有些朋友都没听说过的东西——Callable Constructors提案。 我知道,听到“构造函数”这几个字,大家可能已经开始头大了。别怕,今天我们尽量用最轻松的方式,把这个概念给捋顺了。 开场白:构造函数的那些事儿 在JavaScript的世界里,new 操作符就像一个魔法棒,可以把一个普通函数变成“构造函数”,然后用它来创建对象。例如: function Person(name) { this.name = name; this.sayHello = function() { console.log(`Hello, my name is ${this.name}`); }; } const john = new Person(“John”); john.sayHello(); // 输出: Hello, my name is John 这段代码大家肯定很熟悉了。Person 函数通过 new 操作符,摇身一变,成了构造函数。john 则是通过 …
继续阅读“解释 `JavaScript` 中的 `Callable Constructors` (提案) 如何允许函数作为构造函数,并探讨其与 `NewTarget` 的关系。”