<script type="text/javascript">
var CreateDiv = function(html){
this.html = html;
this.init();
};
CreateDiv.prototype.init = function(){
var div = document.createElement(‘div‘);
div.innerHTML = this.html;
document.body.appendChild(div);
};
/*为了满足单一职责,这里引入代理*/
var ProxySingletonCreateDiv = (function(){
var instance;
return function(html){
if(!instance){
instance = new CreateDiv(html);
}
return instance;
}
})();
var a = new ProxySingletonCreateDiv(‘11‘);
var b = new ProxySingletonCreateDiv(‘22‘);
alert(a===b);
</script>
var obj = {};
<script type="text/javascript">
/*采用字面量创建*/
var std = {
foo: function(){
alert (1);
},
bar:{
str:‘hello world‘,
say:function(){
alert(this.str);
}
}
};
/*动态创建*/
var com = {};
com.namespace = function(name){
var current = com,
parts = name.split(‘.‘);
for(var i in parts){
if(!current[parts[i]]){
current[parts[i]] = {};
}
current = current[parts[i]];
}
};
com.namespace(‘demo‘);
com.namespace(‘dom.style.display‘);
console.log(com);
/*相当于*/
var com = {
demo: {},
dom: {
style: {
display:{
}}
}
};
</script>
<script type="text/javascript">
var user = (function(){
var __name = ‘sven‘,
__age = 29;
return {
getUserInfo: function(){
return __name + ‘-‘ + __age;
}
}
})();
</script>
原文:http://www.cnblogs.com/lfan/p/6074284.html