专栏名称: JavaScript
面向JavaScript爱好人员提供:前端最新资讯、原创内容、JavaScript、HTML5、Ajax、jQuery、Node.js等一系列教程和经验分享。
目录
相关文章推荐
51好读  ›  专栏  ›  JavaScript

JavaScript 中的面向对象编程

JavaScript  · 公众号  · Javascript  · 2017-06-19 11:31

正文

请到「今天看啥」查看全文


对象

如果你写过 JavaScript 代码,那你已经使用过对象了。JavaScript 有三种类型的对象:

原生对象

原生对象是语言规范的一部分,不管在什么样的运行环境下运行,原生对象都可用。原生对象包括:Array、Date、Math 和 parseInt 等。想了解所有原生对象,请参阅 JavaScript 内建对象参考

var cars = Array(); // Array is a native object

宿主对象

与原生对象不同,宿主对象是由 JavaScript 代码运行的环境创建。不同的环境环境创建有不同的宿主对象。这些宿主对象在多数情况下都允许我们与之交互。如果我们写的是在浏览器(这是其中一种运行环境)上运行的代码,会有 window、document、location 和 history 等宿主对象。

document.body.innerHTML = 'Hello World!'; // document is a host object

// the document object will not be available in a

// stand-alone environments such as Node.js

用户对象

用户对象(或植入对象)是在我们的代码中定义的对象,在运行的过程中创建。JavaScript 中有两种方式创建自己的对象,下面详述。

对象字面量

在前面演示创建命名空间的时候,我们已经接触到了对象字面量。现在来搞清楚对象字面量的定义:对象字面量是置于一对花括号中的,由逗号分隔的名-值对列表。对象字面量可拥有变量(属性)和函数(方法)。像 JavaScript 中的其它对象一样,它也可以作为函数的参数,或者返回值。

现在定义一个对象字面量并赋予一个变量:

// declaring an object literal

var dog = {

     // object literal definition comes here...

};

向这个对象字面量添加属性和方法,然后在全局作用域访问:

// declaring an object literal

var dog = {

     breed: 'Bulldog', // object literal property

     bark: function() { // object literal method

           console.log("Woof!");







请到「今天看啥」查看全文