Javascript虽然是用于操作前台界面的补充语言,但是经过ajax视频学习,了解到在js中编写代码也可以遵循面向对象的思想,感到很新奇也很兴奋,下面对其进行总结:
一、简单对象的创建
(1)var obj1 = new Object() //通过new操作符来创建
(2)var obj2 = {} //通过{}来创建
这样就可以在js代码中创建简单的对象。
二、简单对象添加属性和方法
使用“.”操作符来完成属性的添加,属性的名称可以自己定义
//为对象添加属性 obj1.num = 1; obj1.str = “string”; //为对象添加方法 obj1.hello = function() { Alert(“Hello!”) }
有意思的是,属性值可以是前一个创建好的对象,如下:
//obj2的obj属性的值为obj1对象 obj2.obj = obj1;
三、简单对象的属性访问
方法一:点操作符
Alert(obj1.num); //对于“二”中obj2的obj方法,可以继续通过点操作符访问obj1对象的方法 Alert(Obj2.obj.str); Alert(obj2.obj.num); Obj1.hello();
方法二:大括号形式
Alert(obj1[“num”]); Alert(obj2[“obj”][“num”]); obj1[“hello”](); //对于方法的调用,需要加上();
直接量的使用:通过对象直接量的方式定义包含属性的对象
//对象直接量定义方法,利用{},直接将对象和属性、方法创建完成 var obj3 = { num:1; str:"String"; hello:function() { alert("hello"); } };
类的定义,格式如下:
(1)function Teacher() {} //注意类名大写
(2)var Teacher = function() {
//通过匿名函数形式来调用
}
在js中,优先推荐使用第二种类定义方式,因为这种格式可以用来区分类的定义和普通的function()的定义。
定义一个类的公有的属性和方法:
var Book= function(name) { //此时的function 代表类中的构造函数,在使用了new 实例化Book之后,function方法就会执行 this.name = name; //定义共有的方法 this.getName = function(){ return this.name; } //定义共有的方法 this.setName = function(nname) { this.name = nname; } } functionooTest() { var teacher =new Teacher(); alert(teacherinstanceof Teacher); //判断teacher对象是否属于Teacher类,通过instanceof方法 Var book1 =new Book(); //相当于先创建一个简单对象,然后调用构造方法 Var book2 =new Book(); }如此,这就是对于javascript中对于面向对象方向的思想的收获,在前台,对于代码的优化、效率的提高,就可以用得上。同时对于原型对象的理解,将在下一篇博客中说明。