Js模型和封装
2016-01-23 17:41
190 查看
一点拙劣的小分享,欢迎批评和补充
我们经常在Js中为我们的各类组件,构造Json格式的假数据。我们看如下代码:
那么对象的方法如下:
下面给出可读性,复用性更佳的方法,包括闭包。
建议把我们所需要的,复用性高的JS,作为我们项目最顶层的js封装好,并且在闭包外的全局上接受闭包对象,提供给下层调用。
我们经常在Js中为我们的各类组件,构造Json格式的假数据。我们看如下代码:
var jsonResult = [ { 'name': 'ws', 'age': '22' }, { 'name': 'td', 'age': '22' } //我们把jsonResult[x]当作对象,其中的自然为属性 ]; window.onload = function () { alert(jsonResult[0].name); }
那么对象的方法如下:
var jsonResult = [ { 'name': 'ws', 'age': '22','speakFunc':function () { alert('hi,my name is ws'); } }, { 'name': 'td', 'age': '22' ,'speakFunc':function () { alert('hi my name is '+jsonResult[1].name); }} //我们把jsonResult[x]当作独立个体对象 ]; window.onload = function () { jsonResult[0].speakFunc(); jsonResult[1].speakFunc(); }
下面给出可读性,复用性更佳的方法,包括闭包。
var myUpStageClass = function () { var instance = { firstFunc: function () { //方法名可以不用引号 alert('第一个方法输出'); }, 'secondFunc': function (param) { alert(param); } } return instance; //返回闭包的对象 } var appObj = myUpStageClass(); //接受闭包的对象,是不是像实例化 window.onload = function () { appObj.firstFunc(); appObj.secondFunc('第二个方法输出'); }
建议把我们所需要的,复用性高的JS,作为我们项目最顶层的js封装好,并且在闭包外的全局上接受闭包对象,提供给下层调用。
相关文章推荐
- href="javascript:void(0)"
- js解析GET参数解析一次性解决
- BZOJ 1559: [JSOI2009]密码( AC自动机 + 状压dp )
- javascript中使用${}获取后台参数——防止页面进入死循环
- 页面自动跳转----后台传递url
- js 字符串格式化format函数扩展
- JS实现省市联动
- JSP自定义标签
- JSP(二)
- JSP标签
- JSP(一)
- js中变量作用域问题
- pjsip学习
- js向上冒泡排序
- js变量
- 推荐20款JavaScript框架给前端开发者
- js循环性能大比拼
- jsp通用高大上分页
- underscorejs-map学习
- underscorejs-each学习