组件.js
var component = (function(){
var self;
var default_options = {
array_option : [],
string_option : "default"
};
return {
other_function: function(args) {
},
init: function(options) {
self = this;
// merge in user options
for (var attr in options) {
if (options.hasOwnProperty(attr)) {
self.o[attr] = options[attr];
}
}
/***
* Initialize component
*/
self.other_function(args);
}
};
})();
然后在 html 中
<script src="component.js"></script>
<script>
// init the component
component.init({
array_option : [1,2,3],
});
</script>
我问的原因是我已经通过示例看到它并认为它有道理,但他们是否阅读过为什么这是好的做法?这是面向对象的 Javascript 吗?
如果这是 OO javascript,这种模式是否会使原型(prototype)定义变得无用?
上述问题的好答案
Javascript: Module Pattern vs Constructor/Prototype pattern?
最佳答案
Javascript Module Pattern是的,它试图用 encapsulation 模仿 OO 编程
关于javascript - 这种模式在 Javascript 中叫什么?它有名字吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7234732/