Javascript 编写Java脚本类的最佳方法是什么
从下面两种类型的javascript类创建(OOPs概念)中,可以帮助确定哪一种是最佳使用/实现 方式1:Javascript 编写Java脚本类的最佳方法是什么,javascript,jquery,class,oop,Javascript,Jquery,Class,Oop,从下面两种类型的javascript类创建(OOPs概念)中,可以帮助确定哪一种是最佳使用/实现 方式1: var MyClassName = function(){ // private variables // private functions return { // public functions pubFunctionName1: function(){ }, pubFunctionName2: function(){ } }
var MyClassName = function(){
// private variables
// private functions
return {
// public functions
pubFunctionName1: function(){
},
pubFunctionName2: function(){
}
}
}
用法:
myClass = new MyClass();
myClass.pubFunctionName1();
方式2:
function MyClass(){
//public variables and functions
this.publicVariable = "";
this.publicFunctionName3 = function(){
}
// private functions
function privateFunctionName3(){
}
}
用途:
var myClass = new MyClass();
myClass.publicFunctionName3();
这通常取决于你自己的品味和你想如何使用这个课程。。。但几个月前,我问了自己一个类似的问题,发现了一个有用的答案。这也可能有助于向您澄清问题……请查看此链接 它有关于构造函数的特定章节,非常有用 简而言之:在您提出的两种方法中,您将失去与
原型的联系,因此您需要确定是否有必要这样做
另一个建议可能是:
/* self-inited constructor */
var Cat = function () {
if (!(this instanceof Cat)) {
return new Cat();
}
this.name = 'Tom';
};
Cat.prototype.meow = true;
var persian = new Cat();
var cheshire = Cat();
console.log(persian.name); // "Tom"
console.log(cheshire.name); // "Tom"
console.log(persian.meow); // true
console.log(cheshire.meow); // true
做任何事都没有最好的方法。对于一个非常特殊的情况,只有最合适的方法。在这种情况下,没有最好的方法。这将取决于用例和您更熟悉的内容,因为它们都会给出相同的结果。然而,我觉得方式2对我来说更舒适,它更具可读性。但这也取决于用例,Javascript中没有“类”这样的东西。仅限对象。Pholip和Ankit-感谢您的重播。我将使用方式2。因为,我很容易理解编码结构。虽然这是一篇很好的文章,但你应该在你的答案中包含它的一部分。否则,如果链接因任何原因变得不可用,这个答案将是无用的。