新濠天地网站,澳门新濠天地网址,【真人平台】
全国服务热线:400-000-0000
新闻中心在线申请联系我们
公司新闻 行业新闻 行业门户 电子商务 建站经验 网站建设 其他新闻

JavaScript对象探讨

:2015-06-13 11:48     阅读数:     分享到:

由于JavaScript的灵活性,可以让每个人按照自己的习惯进行编写代码.有函数式的编程方式,也有现在用的较为广泛的对象字面量.由于面向对象的出现,JavaScript刚开始的函数编程也逐渐演化为类式编程方式.现在我对几种比较熟悉的编程习惯进行简单的说明:

1.对象字面量:

以下为引用的内容:

var person = {
    name:null,
    setName:function(name){
        this.name = name;
        return this.name;
    },
    getName:function(){
        alert(this.name);
    }
}

具有JavaScript特色的一种编程方式,以类为单位含有属性name,方法setName和getName.调用方法比较简便person.setname(''R''),this由此至终均指向person,person的属性与方法均不私有,可以进行调用.

2.prototype构造器调用模式

以下为引用的内容:

var Person = function(){
    this.name = null;
}
Person.prototype.setName = function(name){
    this.name = name;
}
Person.prototype.getName = function(){
    alert(this.name);
}


也是很常见的编程方式,创建一个Person类,然后利用prototype对类进行扩展,添加方法.与对象字面量最大区别在于,调用该类的方法时,必须先new(跟Java调用类相似).var p = new Person();p.getName();如果不用new,而直接创建,会产生错误.而且这种错误将不会报错,难以发现.错误的产生原因来自于this指向Person.prototypel,而Person并没有setName方法.

3.利用匿名函数进行函数编程

以下为引用的内容:

(function(){
    var name;
         
    var setName = function(n){
         name = n;
    }
    window[''person''][''setName''] = setName;
   
    var getName = function(){
        alert(name);
    }
    window[''person''][''getName''] = getName;
})()

类的出现,其中一个最大的好处就是降低了全局变量的出现,但是如果你依旧习惯于函数式编程,没关系,只要创建一个匿名函数,进行闭包,就可以再里面进行函数编程,也不需要担心全局变量的出现.如上所看到的var name;在匿名函数外部是无法调用的,然后利用外部的变量来调用内部的函数,或者是变量.可以借此创建私有变量和私有方法.


最新案例
最新签约
  1. 成功签约广州市标准化协会网站建设协议...
  2. 成功签约佛山市领缝缝纫设备有限公司网...
  3. 互诺科技-高薪招聘网站PHP程序员...
  4. 成功签约深圳市创景轩园林工程有限公司...
  5. 成功签约广州狮子婴幼公学网站建设协议...
  6. 广州名阳建筑设计有限公司网站建设项目...
  7. 成功签约佛山市其乐教育投资有限公司网...
  8. 成功签约广州力恩普投资管理有限公司网...
最新资讯
  1. 苹果所持现金可买Groupon+Twitter+Zynga...
  2. 世纪佳缘盈利模式受质疑 面临社交网站冲...
  3. 今年北京将采取更严厉手段打击盗版...
  4. 开心网收缩团购突裁百余人 一天内先签约...
  5. 开心网回应团购调整争论:必将负责到底...
  6. Twitter着力提升移动体验 看好HTML5长远前景...
  7. 破除有关Google面试的谣言...
  8. Windows 8也能“穿越”了...
  • 广州某某科技有限公司
    广州市天河区迎龙路161号
    电话:020-0000000 00000000 00000000
    传真:020-0000000
  • 深圳市某某科技有限公司
    深圳天河区迎龙路161号
    电话:020-0000000 00000000 00000000
    传真:020-0000000
400-660-5510qqsina