我想知道函数和构造函数之间的区别。
正常功能
function = dosomething(){ //do something };
构造函数
function = Dosomething(){ //do something };
为什么我们在构造函数中保留第一个字母大写。背后是否有任何具体原因
答案 0 :(得分:2)
没有区别 - 在创建将充当构造函数的函数时,使用大写字母作为名称只是最佳做法。
这就是你如何处理使它们表现不同的函数。这是因为函数是Javascript中的第一类。
例如:
function MyRegularFunction() {
console.log("regular");
}
MyRegularFunction();
vs.
function MyObjectFunction() {
console.log("ctor")
}
MyObjectFunction.prototype = {
constructor: MyObjectFunction,
myMethod: function() {
console.log("object")
}
}
var myInstance = new MyObjectFunction();
myInstance.myMethod();
希望有所帮助。
答案 1 :(得分:1)
在构造函数中大写第一个字母只是一个命名约定,表明该函数是一个类。构造函数的一个例子是:
function Car(color, make, model){
this.color = color;
this.make = make;
this.model = model;
}
然后,您将实例化构造函数,如下所示:
var Dodge = new Car("Blue", "Dodge", "Caliber");