Heim >Web-Frontend >js-Tutorial >Erläuterung zu Problemen im Zusammenhang mit dem neuen Betreiber

Erläuterung zu Problemen im Zusammenhang mit dem neuen Betreiber

jacklove
jackloveOriginal
2018-05-21 11:02:171449Durchsuche

Im Folgenden sind einige Probleme mit dem neuen Betreiber aufgeführt. In diesem Artikel werden die relevanten Probleme erläutert.

Schauen Sie sich zuerst die Ergebnisse an

function Person (name, age, job) {  this.name = name  this.age = age  this.job = job
}
Person.prototype.sayName = function () {  console.log(this.name)
}// 使用new操作符var p1 = new Person('laoyang', '22', 'coding')
p1 instanceof Person // true// 不使用new 操作符var p2 = new Object()
Person.call(p2, 'xiaoyang', '2', 'test')
p2.__proto__ = Person.prototype
p2 instanceof Person // true

Vergleichen Sie die Unterschiede

// 使用new 操作符直接创建实例var p1 = new Person('laoyang', '22', 'coding')
// 不使用new 操作符var p2 = new Object() 
// p2 创建成为一个对象 这时p2的原型是ObjectPerson.call(p2, 'xiaoyang', '2', 'test')
 // Person构造函数在 p2 对象的环境内执行 这时p2已经是一个具有Person属性的实例了,但原型是Objectp2.__proto__ = Person.prototype 
// 最后把Person.prototype 赋值给p2.__proto__,让p2的原型指向Person.prototype

Schritte zum Erstellen einer Instanz ohne Verwendung des neuen Operators:

Person. call(p2, 'xiaoyang', '2', 'test') // d

Dieser Artikel zeigt Probleme im Zusammenhang mit dem neuen Operator. Weitere verwandte Probleme finden Sie auf der chinesischen PHP-Website.

Verwandte Empfehlungen:

Erklärung häufiger Probleme mit JS-Funktionen

Erklärung JavaScript-bezogener Funktionen

Erklärung zu JQuery-DOM und Ereignissen

Das obige ist der detaillierte Inhalt vonErläuterung zu Problemen im Zusammenhang mit dem neuen Betreiber. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn