解决方案 »
- JS滑动门,DIV里在加DIV,后面加的DIV不显示
- 急急,如何 获取radio所选 的值
- 播放器javascript操作类,源代码放送
- 闭包和内存泄漏的基础问题
- 谁见过这么写js的:<script language="javascript" src="../SessionJs.jsp"></script>
- 如何把几张不确定的图片显示在一个网页中
- document.createElement后看不到结果
- 为什么不能设置Cell的背景色?
- "frm.submit;"应该怎么用?
- 如何通过验证表单中的所有域不为空
- 一段JS代码的一部分这是一个仿刷票请问如何实现的
- 关于swfupload剩余可上传文件个数的处理问题
var view={render:funtion(){
}}
view.render()
这样写的好处可以避免了方法名冲突问题.
如果用function render(){}方式,可能在某个地方有一个var render = 123;这样的变量,如此一来就冲突了.
但是view.render();就不会有方法名冲突
2. 开闭原则
从代码维护角度上来说就是对增加开放,对修改闭合.比如我要新增一个功能,如果我能直接新增一个JS文件就能实现这个功能这样最好.
或者直接在JS文件内新增一个函数来实现这个功能.反之,如果要去修改原来JS内部的代码来实现,这样就不太好了.比如有这么一个需求:
需要根据后台返回的错误码来提示不同的错误信息,如1000-"用户名不存在",1001-"验证码不正确"等.
常规的做法就是用多个if else..语句来判断错误码,然后提示信息;万一以后我又要新加一个错误码,那就要
再在源代码中增加一个if语句,有没有一个办法让我新增一个JS文件,或者新增一个函数就能实现呢
答案是有的:
<script type="text/javascript">
var ErrorCode = (function(){
var codeMap = {};
return {
showError:function(errorCode) {
var func = codeMap[errorCode];
func();
}
// 设置代码事件
,setErrorCode:function(code,func) {
codeMap[code] = func;
}
}
})();// 设置错误码
ErrorCode.setErrorCode('1000',function(){
alert('用户名不存在');
});
ErrorCode.setErrorCode('1001',function(){
alert('验证码错误');
});
// 运行错误码
ErrorCode.showError('1000');
</script>
如果我要新增一个错误码:1002-"密码错误"那么我只要在另一个地方添加一句:
ErrorCode.setErrorCode('1002',function(){
alert('密码错误');
});
这句话写在另一个JS文件内,或者添加在JS文件最下方即可实现新的功能.
第一个单例模式的话,在Java里就是一个类只对应一个实体存在,不用new很多,省资源吧。在Hibernate做数据库的时候用到过,其他我很少用到过。
第二个开闭原则,这个是Java里面最重要的了,同楼上各位所说的那样。lz可以想一下java里面向接口编程的方式,