gpt4 book ai didi

Javascript OOP 和类

转载 作者:行者123 更新时间:2023-11-29 18:22:00 25 4
gpt4 key购买 nike

代码在这里:

Father.js

(function(){
function father(){

};
father.prototype.init = function(){
console.log('father');
}
})()

Child.js

(function(){
function child(){

}

child.prototype.init = function(){
console.log('child');
}

var father = new father();
})()

我有两个问题:如何在脚本标记或我创建的任何第三个 javascript 文件之间调用父对象或子对象?第二:如何在子类中调用父对象。我是 JS 的新手,在 javascript 中遇到了一些 OOP 问题。非常感谢您的帮助

最佳答案

您应该将匿名函数的结果分配给一个变量,这样您就可以使用它而不会泄漏 IIFE(立即调用的函数表达式)内部的内容,从而封装除了构造函数之外的所有内容:

var Father = (function(){

// Private stuff...

function Father(){}

Father.prototype.something = function(){};

return Father; // Public constructor
}());

现在您可以在 Child 类中使用 Father,或者更好的是,使用相同的模式,但将父类作为参数传递给 IIFE:

var Child = (function(_parent){

function Child() {
_parent.apply(this, arguments); // inherit properties from Parent class
}

Child.prototype = Object.create(_parent.prototype); // inherit Parent prototype

Child.prototype.something = function(){};

return Child;
}(Father));

关于Javascript OOP 和类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17626526/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com