欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

JavaScript面向对象-简单对象的创建和JSON对象

程序员文章站 2022-04-01 20:03:50
...
JavaScript是一种基于对象(Object-based)的编程语言,它的本质实际上是面向对象。面向对象的语言的特点是它们都有类的概念,通过类可以创建任意多个具有相同属性和方法的对象。但是在JavaScript中没有类的概念,通常称JavaScript中的对象为原型对象,我们可以直接通过Object来创建对象。例如下面的代码:
var person = new Object();
person.name = "张三";
person.age = 20;
person.say = function(){
  alert(this.name+","+this.age);
}

在上面的代码中,通过Object简单的创建了一个person对象,随后为person对象设置了2个属性和1个方法。

通过上面的方式创建的对象,带来的最大问题是由于没有类的约束,无法实现对象的重复利用,并且没有一种约定,在操作是会带来问题。

Json对象

我们不能够在网络中传输一个JavaScript对象,在网络中只能够传输字符串。一个可行的传输对象的方法是将对象编写为XML格式进行传输,例如:

<?xml version="1.0" encoding="utf-8"?>
<preson>
  <id>1</id>
  <name>张三</name>
  <age>20</age>
</person>

但是使用XML格式进行数据传输的时候,在传输过程中会产生大量的附加标签字符串,这样的传输效率明显不高。为了解决这些问题,人们研究出了另一种字符串对象的格式:Json对象格式。

Json的全称是javascript simple object notation,是一种简单的数据交换格式。Json对象就是javascript对象,但是它省略了xml中的标签,而是通过{}来完成对象的说明。

Json格式通过属性名:属性值来定义属性,不同的属性通过逗号(,)来分隔,最后一个属性不需要添加逗号。例如下面的代码定义了一个Json格式的person对象。

var person = {
  name : "张三",
  age:23,
  say:fuction(){
    alert(this.name+","+this.age);
  }
}

要调用person对象的属性和方法和普通的JavaScript对象使用的方法相同,例如:

// 调用person的say方法
person.say();

我们通过Json也可以创建对象数组,创建的方式和JavaScript的数组一样。

var ps = [
  {name:"Leon",age:22},
  {name:"Ada",25}
];

在完成数组的创建之后,我们也可以遍历数组中的Json对象。

for(var i = 0; i < ps.length; i++){
  alert(ps[i].name);
}

以上就是JavaScript面向对象-简单对象的创建和JSON对象的内容,更多相关内容请关注PHP中文网(www.php.cn)!