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

松软科技前端课堂:JavaScript 对象

程序员文章站 2023-08-20 00:00:09
真实生活中的对象、属性和方法 在真实生活中,汽车是一个对象。 汽车有诸如车重和颜色等属性,也有诸如启动和停止的方法: car.name = porsche car.model = 911 car.length = 4499mm car.color = white car.start() car.dr ......

真实生活中的对象、属性和方法

在真实生活中,汽车是一个对象。

汽车有诸如车重和颜色等属性,也有诸如启动和停止的方法:

 

对象 属性 方法
 松软科技前端课堂:JavaScript 对象

car.name = porsche

car.model = 911

car.length = 4499mm

car.color = white

car.start()

car.drive()

car.brake()

car.stop()

所有汽车都拥有同样的属性,但属性值因车而异。

所有汽车都拥有相同的方法,但是方法会在不同时间被执行。

javascript 对象

您之前已经学到,javascript 变量是数据值的容器。

这段代码把一个单一值(porsche)赋给名为 car 的变量:

var car = "porsche";

对象也是变量。但是对象包含很多值。

这段代码把多个值(porsche, 911, white)赋给名为 car 的变量:

var car = {type:"porsche", model:"911", color:"white"};

值以名称:值对的方式来书写(名称和值由冒号分隔)。

javascript 对象是被命名值的容器。

对象属性

(javascript 对象中的)名称:值对被称为属性。

var person = {firstname:"bill", lastname:"gates", age:62, eyecolor:"blue"};
属性 属性值
firstname bill
lastname gates
age 62
eyecolor blue

对象方法

对象也可以有方法

方法是在对象上执行的动作

方法以函数定义被存储在属性中。

属性 属性值
firstname bill
lastname gates
age 62
eyecolor blue
fullname function() {return this.firstname + " " + this.lastname;}

方法是作为属性来存储的函数。

var person = {
  firstname: "bill",
  lastname : "gates",
  id       : 678,
  fullname : function() {
    return this.firstname + " " + this.lastname;
  }
};

属性属性值firstnamebilllastnamegatesage62eyecolorblue

this 关键词

在函数定义中,this 引用该函数的“拥有者”。

在上面的例子中,this 指的是“拥有” fullname 函数的 person 对象。

换言之,this.firstname 的意思是 this 对象的 firstname 属性。

对象定义

我们定义(创建)了一个 javascript 对象:

实例

var person = {firstname:"bill", lastname:"gates", age:62, eyecolor:"blue"};

空格和折行都是允许的。对象定义可横跨多行:

实例

var person = {
    firstname:"bill",
    lastname:"gates",
    age:50,
    eyecolor:"blue"
};

访问对象属性

您能够以两种方式访问属性:

objectname.propertyname;
objectname["propertyname"];

访问对象方法

您能够通过如下语法访问对象方法:

objectname.methodname()
objectname.methodname()
var x = new string();        // 把 x 声明为 string 对象
var y = new number();        // 把 y 声明为 number 对象
var z = new boolean();       //    把 z 声明为 boolean 对象