JAVASCRIPT高级应用面向对象

来源:互联网 时间:1970-01-01

在传统的web开发模式当中,javascript只是一种点缀的作用,完成了有限的一些功能,比如表单验证之类的。而在当然我们对javascript的开发要求越来越高,也越复杂,对于这样需求,我们可以使用面向对象编程的思想,使它们在逻辑上面更加清晰、轻巧。

面向对象中很核心的概念之一就是Class.下面我们在javascript模拟一下

function person(name,age){

this.name=name;

this.age=age;

}

var person = new person('your are name?','25');

alert(person.name);

对象有不同的属性与方法,这个取决于它们实例化的对象(l类),我们可以用.或者[]来获取或者赋值给对象的属性。以下代码与以上代码结果保持一致。

function person(name,age){

this.name=name;

this.age=age;

}

var person = new person('your are name?','25');

alert(person['name']);

javascript的函数还是比较棒的,相对于上面写法,我们还可以使用匿名函数如下;

var person = function(name){

this.name=name;

alert(this.name);

}

person('Hello word!!');

为了进一步说明函数就是对象,我们还可以为在函数中为对象添加属性,如下;

var person=function(name){

this.name=name;

}

person.show="Thank you!!";

alert(person.show);

怎么样,很好用吧,接下来我们为对象来添加方法,一般在开发当中采用匿名类方式比较多,我们也采用这种方式如下;

var person={

'name':'person',

'age':'25',

'show':function(){

alert(''My name is '+ this.person);

}

};

person.show();

我们可以通过this来引用person对象,通过对象来调用属性或者方法,this引用的值不是静态的,通过不同的对象调用this时,它便会指向不同的对象。

原型是javascript面向对象中很重要的一个概念,这些对象从原型中继承了属性和方法。

function person(name){

this.name=name;

}

person.prototype.sayHi=function(){

alert('My name is prototype!!');

}

var p = new person();

p.sayHi();

这样我们就可以实现出来了,相对于上我们也可以这样写;

function person(name){

this.getName=function(){

alert("Thank you!!!!!")

}

}

person.prototype.sayHi=function(){

alert('My name is prototype!!');

}

var p = new person();

p.sayHi();

p.getName();

在javascript当中还有一个比较重要,javascript空间命名,相似面向对象包的概念如下:

//定义空间,模拟于java包的概念'

var space = {};

var out = java.lang.System.out;

space.person= {

"name" : "kpxu",

"show" : function(name) {

out.println("hello word...." + name);

}

}

使用面向对象构建JAVASCRIPT高级应用就已经写完了,在此谢谢大家,让我们一起努力吧!!!!



相关阅读:
Top