本篇内容介绍了“JavaScript中模仿C#编码方式举例分析”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
首先是JavaScript代码底层部分:
var jmz = {}; //全部代码的存放对象 jmz.demo = {}; //在jmz下引申出一个demo存放对象,
//以上两个就类似于.NET里面的NameSpace,下面的方法编写也模仿C#的编码方式
jmz.o = {}; //用来存放全部的全局变量
这里定义3个东西,所有的静态,方法及变量都从jmz下面引申出来。
◆好处:不管你代码写的有多少行,全部只占用一个全局变量,这样你跟其他程序员合作是就不会有任何的变量名冲突。
◆坏处:如果写到后面调用代码会过长,但也有个处理方式,这里提示下with这个。
jmz.o是用来存放你要在网页中添加的全局变量,当然大家可以自由扩展优化,有好的点子希望能联系我共同探讨。
接下来是两个典型例子,一个模拟C#静态方法,一个模拟C#的类。
静态方法:
jmz.demo.HelloWorldA = function(str) { //模拟C#的静态方法调用方式 alert(str); }
这个与原来的JS函数一摸一样,调用方式也类似于C#的静态调用方式。可用于一些非常常用的方法,比如获得对象,获得字符串长度,给对象添加事件等等。
类写法:
jmz.demo.HelloWorldB = function() { var _data = ""; //类中的全局私有变量,前缀“_”来与方法内的变量进行区分 function Process(str) { //类中的私有方法,私有方法编写方式头字母大写 if (str.length > 0) _data = str; else return false; return true; } function Show() { alert(_data); } this.process = function(str) { //类中的公共方法,供外部调用,头字母小写 return Process(str); } this.show = function() { Show(); } }
这个类写法个人感觉还不错,自己给自己定义编写代码时候的规范用来区分私有方法与公共方法、私有变量与共有变量。
好了上面的代码框架写完了,下面来个实际调用的吧!
jmz.Bind("load", function() { jmz.demo.HelloWorldA("Chinajmz:HelloWorldA!");//静态方法调用 jmz.o.helloWorldB = new jmz.demo.HelloWorldB();//初始化类并存放到jmz.o的对象中 if (jmz.o.helloWorldB.process("Chinajmz:HelloWorldB!") == true) {//对象中公共方法调用 jmz.o.helloWorldB.show(); } });
此处用了我先前的JS事件绑定方法,有兴趣的可以去查看下。
效果:
“JavaScript中模仿C#编码方式举例分析”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。