gpt4 book ai didi

javascript - 哪些技术可用于在 JavaScript 中定义一个类,它们的取舍是什么?

转载 作者:IT老高 更新时间:2023-10-28 11:13:01 24 4
gpt4 key购买 nike

我更喜欢在大型项目中使用 OOP,比如我现在正在从事的项目。我需要在 JavaScript 中创建几个类,但如果我没记错的话,至少有几种方法可以做到这一点。语法是什么?为什么会这样?

我想避免使用第三方库 - 至少一开始是这样。
寻找其他答案,我找到了文章 Object-Oriented Programming with JavaScript, Part I: Inheritance - Doc JavaScript 讨论 JavaScript 中的面向对象编程。有没有更好的继承方式?

最佳答案

这是不使用任何外部库的方法:

// Define a class like this
function Person(name, gender){

// Add object properties like this
this.name = name;
this.gender = gender;
}

// Add methods like this. All Person objects will be able to invoke this
Person.prototype.speak = function(){
alert("Howdy, my name is" + this.name);
};

// Instantiate new objects with 'new'
var person = new Person("Bob", "M");

// Invoke methods like this
person.speak(); // alerts "Howdy, my name is Bob"

现在真正的答案远比这复杂得多。例如,JavaScript 中没有类之类的东西。 JavaScript 使用基于 prototype 的继承方案。

此外,许多流行的 JavaScript 库都有自己的风格,在 JavaScript 中近似于类功能。您至少要查看 PrototypejQuery .

决定哪一个是“最好的”是对 StackOverflow 发起一场圣战的好方法。如果你正在着手一个大型的 JavaScript 密集型项目,那么绝对值得学习一个流行的库并按照他们的方式去做。我是 Prototype 人,但 StackOverflow 似乎更倾向于 jQuery。

就只有“一种方法”而言,不依赖于外部库,我编写的方式差不多就是这样。

关于javascript - 哪些技术可用于在 JavaScript 中定义一个类,它们的取舍是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/387707/

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