我了解 OOP 的主要原理,并且我有点知道如何将其实现到 JS 中。
function Person(name) {
this.name = name;
this.speak = function(msg) {
console.log('Person says:' + msg);
}
}
var dad = new Person('David');
dad.speak('I am your dad!');
Run Code Online (Sandbox Code Playgroud)
上面的脚本只是在控制台中打印出一条消息。我不明白我们如何用这种技术处理 DOM。也许是这样的?:
function Person(target, name) {
this.target = target;
this.name = name;
this.speak = function(msg) {
this.target.find('.speech-bubble').html(msg);
}
}
var dad = new Person($('#dad'), 'David');
dad.speak('I am your dad!');
Run Code Online (Sandbox Code Playgroud)
虽然这似乎不是一个好方法。
我们如何通过 OO Javascript 使用对象、方法、构造函数等操作 DOM?