大家还是发表看法哈,好了俺继续研究,我也是刚学JS哈,原来只当作简单API
RIA目前非常火热,很多java开发者开始也不得不使用ajax框架,比如javaeye吵闹活的Ext!
但是大家不要忘记Ext 根基是什么 JS!
大家最早用js是函数,考虑对象!
今天以java角度介绍js入门一 对象!
实例说明: 仔细研究哈!!
代码见附件,可以运行,直接IE打开Animal.htm就ok
Animal.js文件如下!
//定义类Animal
/*function(name ,age)相当于java的构造器*/
var Animal = function(name ,age) {
//name,age相当于java的熟悉
this.name = name==undefined? 'animal':name;
this.age = age==undefined? 0:age;
};
//定义函数,类似java的方法,java必须先定义类,才有方法js可以直接定义函数
function getName() {
alert("hello name is:" + this.name);
}
;
function setName(name) {
this.name = name;
}
;
//通过原型给类Animal增加函数指针getName指向函数getName
Animal.prototype.getName = getName;
Animal.prototype.setName = setName;
//相当于匿名函数
Animal.prototype.sayAge = function() {
alert("hello age is:" + this.age);
};
//类似的java代码
/*
public class Animal {
private String name;
private int age;
public Animal(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public void sayAge() {
this.age = age;
}
}
* */
Animal.htm文件如下!
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GBK">
<script type="text/javascript" src="Animal.js"></script>
<title></title>
</head>
<body onload="doit()">
</body>
<script type="text/javascript">
function doit() {
/*对象animal,animal1的属性一样,呵呵这样说明什么,想想java*/
var animal = new Animal();
animal.getName();//
animal.sayAge();
var animal1 = new Animal('kite', 12);
animal1.getName();//
animal1.sayAge();
//改变对象animal的属性
animal.setName('tomcat');
alert("执行animal.setName('tomcat');后");
animal.getName();//
animal1.getName();//
}
</script>
</html>