javascript 学习笔记(八)javascript对象_Javascript教程-查字典教程网
javascript 学习笔记(八)javascript对象
javascript 学习笔记(八)javascript对象
发布时间:2016-12-30 来源:查字典编辑
摘要:1、javascript中的内置对象javascript中除了本身的内置对象,如以下我们所熟悉的对象:•Array•...

1、javascript中的内置对象

javascript中除了本身的内置对象,如以下我们所熟悉的对象:

•Array

•Date

•Math

•String

•RegExp

•……

各个对象都有自己的属性及方法,比如我们经常使用属性及方法

属性:stringObject.length; arrayObject.length;……

方法:stringObject.indexOf(); stringObject.splite(); stringObject.substr(); arrayObject.concat(); arrayObject.push(); arrayObject.join();……

2、如何自定义对象,及添加属性和方法

a. 通过关键字new创建

复制代码 代码如下:

var newObject = new Object(); //创建一个新类

newObject.name = "new object"; //添加一个name的属性

newObject.say = function() { //添加say()方法

alert(this.name); //output new object

}

对于以上的创建方法,我们可以利用JSON(JavaScript Object Notation)的方法简写为如下代码:

复制代码 代码如下:

var newObject = {

name: "new object";

say: function () {

alert(this.name);

}

};

我们利用JSON的数据格式创建一个更为复杂的对象

复制代码 代码如下:

var company = {

name: "tuanzz",

product: "groupon",

address: {province: "Hubei", city: "wuhan"},

person:[

{name: "zhangchen",age: "23"},

{name: "luomi", age: "23"},

],

readme: function() {

alert("My name is "+this.person[0].name+" and "+this.person[0].age+" years old");

}

};

company.readme(); //output My name is zhangchen and 23 years old;

我们可以看到,用JSON的数据格式创建的对象,代码不仅看起来十分优雅。

JSON的形式就是用大括“{}”号包括起来的项目列表,每一个项目间并用逗号“,”分隔,而项目就是用冒号“:”分隔的属性名和属性值。这是典型的字典表示形式,也再次表明了 JavaScript里的对象就是字典结构。不管多么复杂的对象,都可以被一句JSON代码来创建并赋值。

b、通过构造函数来创建对象

复制代码 代码如下:

function objectFun(name) {

this.name = name;

this.say = function() {

alert(this.name);

}

}

var newObject = new objectFun("zhangchen");

newObject.say(); //output zhangchen

首先新建一个objectFun()函数,其中定义了属性和方法,这里我们可以把objectFun看作一个类(在javascript中函数就是对象),然后通过new实例化出一个对象,newObject对象中同样也有了父类中属性和方法。

我们可以用以下代码来检测函数确实是对象:

复制代码 代码如下:

//普通函数

function say(s) {

alert(s);

}

say("hi");

//给函数对象赋属性,函数就是对象

say.test = "it can work?";

alert(say.test); //output it can work?

如何理解以上创建对象的方法?我们看下面的代码:

复制代码 代码如下:

function objectFun(name) {

this.name = name;

this.say = function() {

alert(this.name);

}

}

var newObject = new Object(); //创建一个空对象

objectFun.call(newObject, "zhangchen"); //将newObject作为this参数调用objectFun函数

newObject.say("zhangchen");//output zhangchen

首先创建一个newObject对象,newObject作为this参数调用objectFun函数。讲了这么多,我们完全可以把objectFun作为构造函数来使用。

-------------------------------------------------------------------------------------------------------------------------------------------------

余下内容大家可参考李战写的悟透JavaScript

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新Javascript教程学习
    热门Javascript教程学习
    编程开发子分类