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封装好,并且在闭包外的全局上接受闭包对象,提供给下层调用。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?