javascript原型构造函数语法1与语法2
我已经看到了javascript原型的两种语法:第一种来自教程,第二种由typescript生成 第二种语法比第一种更简单和传统的构造函数语法有什么优势javascript原型构造函数语法1与语法2,javascript,Javascript,我已经看到了javascript原型的两种语法:第一种来自教程,第二种由typescript生成 第二种语法比第一种更简单和传统的构造函数语法有什么优势 JavaScript区分大小写。如果你看这一行: var person1 = new person1("John", "Doe"); …您有newperson1,但没有名为person1的标识符。然而,有一个人1: var person1 = new Person1("John", "Doe"); 顺便说一句,第二种语法没有提供任何优势。
JavaScript区分大小写。如果你看这一行:
var person1 = new person1("John", "Doe");
…您有newperson1
,但没有名为person1
的标识符。然而,有一个人1
:
var person1 = new Person1("John", "Doe");
顺便说一句,第二种语法没有提供任何优势。如果构造函数使用了您不想公开的其他变量,那么这将是有利的:
var Person2 = (function () {
var defaultFirstName = 'John';
var defaultLastName = 'Doe';
function Person2(first, last) {
this.firstName = first || defaultFirstName;
this.lastName = last || defaultLastName;
}
return Person2;
})();
例如,在这种情况下,
defaultFirstName
和defaultLastName
对构造函数以外的所有对象都隐藏。JavaScript区分大小写。如果你看这一行:
var person1 = new person1("John", "Doe");
…您有newperson1
,但没有名为person1
的标识符。然而,有一个人1
:
var person1 = new Person1("John", "Doe");
顺便说一句,第二种语法没有提供任何优势。如果构造函数使用了您不想公开的其他变量,那么这将是有利的:
var Person2 = (function () {
var defaultFirstName = 'John';
var defaultLastName = 'Doe';
function Person2(first, last) {
this.firstName = first || defaultFirstName;
this.lastName = last || defaultLastName;
}
return Person2;
})();
例如,在本例中,
defaultFirstName
和defaultLastName
对构造函数以外的所有对象都隐藏。好的,谢谢。我会解决它,但我的主要问题仍然没有答案:)好的,谢谢。我会解决它,但我的主要问题仍然没有回答:)这不是同一个问题:另一个问题是关于文字对象的,我这里没有文字语法。这不是同一个问题:另一个问题是关于文字对象的,我这里没有文字语法。