Maison > Questions et réponses > le corps du texte
function Person {}
Person.prototype.test = function() {
}
new Person()
new Person
Ces deux méthodes d'écriture ont le même effet. Pourquoi est-ce la même chose que la précédente sans parenthèses
巴扎黑2017-05-19 10:33:03
new constructor[([arguments])]
Lorsque le code new Person(...) est exécuté :
Un nouvel objet est créé. Il hérite de Person.prototype.
Constructor Person est exécuté. Lors de l'exécution, les paramètres correspondants seront transmis et le contexte (this) sera désigné comme cette nouvelle instance.
new Person est équivalent à new Person() et ne peut être utilisé que sans transmettre aucun paramètre.
迷茫2017-05-19 10:33:03
Y a-t-il un problème ? Par défaut, aucune valeur n'est transmise lorsque les parenthèses ne sont pas ajoutées
function Person(val){this.val=val};//类似这种传值的就得加
Et les priorités d'ajouter () et de ne pas ajouter sont également différentes