经过了1个多月的紧张加班工作,项目终于在2010.5.1完成了..在整个过程中,由于项目量大,历史问题多,制作修改时间短,等因素..搞得很累。这几天闲下来没啥事,趁着前些日子的热乎劲,我再看看书,和实际工作中的问题结合的整理一下,给自己留个记录,给新手朋友们做个借鉴,这是一个系列的文章,先从javascript的面向对象、js的一些高级技巧 、排错方法、常用代码和工具、到AJAX相关的内容进行记录,大部分是从书中摘要的,毕竟还是人家的东西更系统些。...哥们文笔不咋地,争取做到思路清晰,排版清楚...
一.javascript 面向对象
1. 在面向对象中,最核心的一个概念就是类 。 一个类表示了具有相似性质的一类事物的抽象,通过实例化一个类,可以获得属于该类的一个实例。
2. new 可以获取一个实例。
3. 在js中,函数和类就是一个概念,当对一个函数进行new操作时,就会返回一个对象。如果这个函数中没有初始化类成员,那就会返回一个空的对象。
//定义一个类
function hello(){
alert("hello");
}
var obj = new hello();
alert(typeof(obj));
4. eval函数的性质,执行一段动态生成的代码,并返回结果。
5. 动态添加、修改、删除对象的属性和方法
a. 创建类
var user=new objec();
b. 添加属性
user.name = "chaolive007";
user.age = 29l
user.sex = "male";
c. 添加方法
user.alert = function(){
alert("my name is :" + this.name);
d. 修改属性和方法
user.name = "007Chaolive";
user.alert = function(){
alert("hello , " + this.name);
}
e. 删除属性和方法
user.name = undefinded;
user.alert = underfinded;
6. 使用 {} 创建无类型对象
<script type="text/javascript">
var obj={};
var user={
name:"chaolive007",
favoriteColor:["red","qreen","white"],
hello:function(){alert("hello, this.name");},
sex:"male"
}
</script>
注1:var obj={}; 等价于 var obj = new Object();
注2:无类型对象提供了一种创建对象的简便方式,他以紧凑和清晰的语法将一个对象体现为一个完整的实体。这对javascript来说尤其重要,减少体积意味着提高了访问速度。
7.prototy原型对象
prototy对象是实现面向对象的一个重要机制,每个函数都具有一个子对象prototype.它表示了一个类的成员的集合。