码迷,mamicode.com
首页 > 编程语言 > 详细

Javascript 面向对象编程

时间:2015-01-10 08:50:23      阅读:162      评论:0      收藏:0      [点我收藏+]

标签:

来源:http://coolshell.cn/articles/6441.html

 

 

Javascript是一个类C的语言,他的面向对象的东西相对于C++/Java比较奇怪,但是其的确相当的强大,在 Todd 同学的“对象的消息模型”一文中我们已经可以看到一些端倪了。这两天有个前同事总在问我Javascript面向对象的东西,所以,索性写篇文章让他看去吧,这里这篇文章主要想从一个整体的角度来说明一下Javascript的面向对象的编程。(成文比较仓促,应该有不准确或是有误的地方,请大家批评指正

另,这篇文章主要基于 ECMAScript 5, 旨在介绍新技术。关于兼容性的东西,请看最后一节。

初探

我们知道Javascript中的变量定义基本如下:

var name = ‘Chen Hao‘;;
var email = ‘haoel(@)hotmail.com‘;
var website = ‘http://coolshell.cn‘;

如果要用对象来写的话,就是下面这个样子:

var chenhao = {
    name :‘Chen Hao‘,
    email : ‘haoel(@)hotmail.com‘,
    website : ‘http://coolshell.cn‘
};

于是,我就可以这样访问:

//以成员的方式
chenhao.name;
chenhao.email;
chenhao.website;
 
//以hash map的方式
chenhao["name"];
chenhao["email"];
chenhao["website"];

关于函数,我们知道Javascript的函数是这样的:

var doSomething = function(){
   alert(‘Hello World.‘);
};

于是,我们可以这么干:

 1 var sayHello = function(){
 2    var hello = "Hello, I‘m "+ this.name
 3                 + ", my email is: " + this.email
 4                 + ", my website is: " + this.website;
 5    alert(hello);
 6 };
 7  
 8 //直接赋值,这里很像C/C++的函数指针
 9 chenhao.Hello = sayHello;
10  
11 chenhao.Hello();

 

Javascript 面向对象编程

标签:

原文地址:http://www.cnblogs.com/cblx/p/4214480.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!