gpt4 book ai didi

javascript - 创建构造函数后使用原型(prototype)有什么好处?

转载 作者:行者123 更新时间:2023-11-30 00:04:45 24 4
gpt4 key购买 nike

如果你有一个像

这样的构造函数
var SomeClass = function(){
this.a= "";
this.b= "";
}

然后假设您使用原型(prototype)添加另一个方法

SomeClass.prototype.fn = function fn(){
console.log(this.a);
};

为什么要使用 prototype ,你可以将这个方法添加到你的构造函数中功能?

最佳答案

有几个好处:

  1. 它创建一个 fn 函数,由使用该构造函数创建的所有对象重用;这比每个对象上的单独函数更节省内存。

  2. 让对象保持与其原型(prototype)的动态链接意味着当您向原型(prototype)添加方法时,它们可用于已经存在的对象。

  3. 只有一个函数所有相关对象重用意味着您可以在必要时更新该函数在运行时,只在一个地方,并使用更新后的函数由所有相关对象,甚至是已经存在的对象。

  4. 在构造函数的 prototype 属性上提供它意味着它可以用于其他对象,而不是通过构造函数创建;这个经常用,效果不错,比如:

    Array.prototype.forEach.call(
    document.querySelectorAll("div"),
    function(div) {
    // ...
    }
    );

关于javascript - 创建构造函数后使用原型(prototype)有什么好处?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38916200/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com