最近进入现场开发环节了,首先的工作是对JS脚本文件的整理和部分重写,因此算是扎扎实实看了一下javascript相关的知识,采用的库是jQuery,里面部分使用了面向对象的思想在里面,据说javascript的对象和闭包是其比较重要的两个方面,根据这几天的javascript方面的学习及实践,主要记录一下javascript中得面向对象的知识。
1、对象的创建方式
javascript的对象的创建,可以通过如下的三种方式来进行:
A、通过Object对象;
直接通过Object对象来创建对象的示例代码如下:
var person = new Object();
person.id = '001';
person.name='zhangsan';
person.age = 24;
person.print = function() {
return "my name is " + this.name + ", i am " + this.age + " years old! My id is "+ this.id;
}
person.print();
这应该是最常用,最直观的一种创建对象方法,但是它的缺点太明显了,就是代码复用度很低。在真实项目代码中,应该使用复用度更好的方式来创建对象。
B、通过构造函数;
通过构造函数创建javascript中的对象,相比于通过Object直接来创建对象,复用度相对来说有了一定得改进,具体的示例代码如下:
function Person() {
var _this = this;
var age = 18;
var name = "zhangsan";
this.setAge = function(_age) {
age = _age;
}
this.getAge = function() {
return age;
}
this.setName = function(_name) {
name = _name;
}
this.getName = function() {
return name;
}
}
var person = new Person();
person.setAge(26);
person.setName('Aries');
$('#age').val(person.getAge());
不过这里需要更加注意的是this这个关键字,function Person中得变量,如果通过var定义则为类似Java等语言中的私有变量,外部不能访问,反之则为公有变量,而Person中得方法,则如果用this.getAge类似的则为公有方法,反之则为私有方法,在实际使用中需要特别注意。
C、通过对象的初始化:
通过对象的初始化方法来创建对象也是一个常用的对象创建方法,具体示例代码如下所示:
var Comp = {
id: '001',
name: 'zhangsan',
age: 24,
print: function() {
alert("My name is " + this.name + ", I am " + this.age + " years old! My id is " + this.id);
}
}
Comp.print();
分享到:
相关推荐
Javascript面向对象基础 (朋友给我的 我给大家喽 。)
Javascript面向对象基础.rar
JavaScript面向对象基础PPT,讲述了何谓面向对象、面向对象特点、组成及写法、工厂模式、原型以及如何将普通面向过程的代码转换为面向对象的基本原则
非常不错的js教程,基于其面向对象的特性加以深入阐述,通俗易懂
这个是针对JavaScript的那个章节做的分析,希望对大家能有帮助,想要了解的人可是下来看看~!
JavaScript作为一门浏览器语言的核心思想;面向对象编程的基础知识及其在... 《JavaScript面向对象编程指南》着重介绍JavaScript在面向对象方面的特性,展示如何构建强健的、可维护的、功能强大的应用程序及程序库
《JavaScript面向对象编程指南》内容包括:JavaScript作为一门浏览器语言的核心思想;面向对象编程的基础知识及其在JavaScript中的运用;数据类型、操作符以及流程控制语句;函数、闭包、对象和原型等概念,以代码...
一本非常适合初学者的书,很不错!一本非常适合初学者的书,很不错!
NULL 博文链接:https://chuqq.iteye.com/blog/826664
主要介绍了JavaScript 面向对象基础,结合简单实例形式分析了JavaScript面向对象程序设计中类的定义、类方法与属性相关操作技巧,需要的朋友可以参考下
javascript面向对象技术基础,javascript面向对象技术基础
面向对象编程的基础知识及其在JavaScript中的运用;数据类型、操作符以及流程控制语句;函数、闭包、对象和原型等概念,以代码重用为目的的继承模式;BOM、DOM、浏览器事件、AJAX和JSON;如何实现JavaScript中缺失的...