`
classicbride
  • 浏览: 14828 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
最近访客 更多访客>>
社区版块
存档分类
最新评论

现代Javascript之对象创建

阅读更多
转载自重庆PHp:http://www.php-chongqing.com/index.php/article/26
对象是Javascript的基础,在Javascript中所有的东西都是面向对象的。Javascript是一门彻底的面向对象的语言。
在Javascript中创建对象的方式有很多种,你可以使用以下几种方式在Javascript中创建对象。

利用内置Object对象,完成对象创建
var obj = new Object();  // 创建一个新的Object对象,把这个对象的实例存入变量'obj'中。

// 为'obj'对象设置属性和方法
obj.val = 5;
obj.click = function() {
    alert("hello");
}


函数式创建
因为Javascript中并没有类(class)的概念,任何函数都可以被实例化为一个对象。
// 创建一个新的User构造函数
function User(name, age) {
    this.name = name;
    this.age = age;
}
var user = new User();
alert("name:" + user.name);

在上面的代码中,我们定义了函数User(),接着我们执行new User(),函数怎么能new?
在Javascript中函数就是对象,好吧,你可以把函数User()理解为构造函数,所以,你可以执行new User()得到一个User()对象的实例。
晕了没?漂移的Javascript!

简单对象创建
var obj = {
    val: 5,
    click: function() {
        alert("hello");
    }
}

简单对象使用{...}简写方式来创建对象,结合键值对(key/value)来定义属性。
用Java或是其它面向对象语言来理解,上述代码相当于定义了一个Class类,然后实例化了这个Class,并把这个实例赋值给变量obj。
简单对象,在Javascript非常常用,因为它使用起来简单方便。

原型方式创建对象(推荐)
// 创建一个新的User构造函数
function User(name, age) {
    this.name = name;
    this.age = age;
}

// 将一个新的函数添加到此对象的prototype对象中
User.prototype.getName = function() {
    return this.name;
}

// 并再给此prototype对象添加一个函数,
User.prototype.getAge = function() {
    return this.age;
}

// 实例化一个新的User对象
var user = new User("Bob", 44);
user.getAge();

我们推荐使用原型方式来定义Javascript对象,Javascript的每个对象/函数,上面已经说了函数其实也是对象,都有一个prototype属性,
你可以把prototype属性理解为对象对自己实例的一个引用。
分享到:
评论

相关推荐

    JavaScript核心对象参考手册

    2. **对象创建与原型Prototype**: JavaScript使用`new`关键字创建对象实例,原型链允许对象间共享属性和方法,`__proto__`或`prototype`属性是理解这一机制的关键。 3. **函数对象Function**: 在JavaScript中,函数...

    现代JavaScript教程

    现代JavaScript教程是一个全面的学习资源,旨在帮助开发者深入理解JavaScript这一重要的编程语言。JavaScript,作为Web开发的核心技术之一,被广泛用于构建交互式的网页和应用程序。本教程覆盖了从基础概念到高级...

    javascript面向对象编程.pdf

    现代JavaScript语言之所以可靠、健壮且强大,得益于无数聪明程序员的认同与实践,使得一些概念和用法得到了升华和普及。 面向对象的编程(OOP)在JavaScript中并不是新鲜事物。JavaScript被设计成一种彻底的面向...

    javascript面向对象编程(中文).pdf

    面向对象编程是现代JavaScript的核心之一,它通过构造函数、原型链等机制实现了类和继承的概念。掌握这些基本概念对于构建高效、可维护的JavaScript应用至关重要。同时,合理利用现有的测试工具和框架可以极大地提高...

    JavaScript学习笔记之创建对象_.docx

    在JavaScript中,对象是核心概念之一,它们是无序...学习和掌握JavaScript对象的创建、属性访问以及原型机制,对于深入理解和使用JavaScript至关重要。理解并熟练运用这些知识点,可以有效地构建复杂的应用程序和组件。

    javascript对象参考手册

    首先,手册的前几章会介绍JavaScript对象的基础知识,包括对象的创建、属性和方法的定义,以及对象与数据类型的关联。JavaScript中的对象是基于原型的,这意味着它们可以通过原型链共享属性和方法。此外,还会讲解...

    javascript面向对象

    3. **ES6类语法**:现代JavaScript提供了更接近传统面向对象语言的类语法,使得定义类和创建对象更加直观。例如: ```javascript class Person { constructor(name, age) { this.name = name; this.age = age; ...

    面向对象JavaScript开发

    面向对象JavaScript开发是现代Web开发中不可或缺的一部分,它使得JavaScript能够构建复杂、可维护的应用程序。 面向对象编程是一种基于对象和类的编程范式,它强调数据和操作数据的方法的封装。在JavaScript中,...

    javascript面向对象编程PDF

    现代JavaScript简介: JavaScript是一门经历多年发展而来的编程语言,它由最初的简单脚本语言发展成为如今被广泛使用的、可靠的编程语言。在过去的十年中,JavaScript不断演化,其设计思想、语法和功能都有所增强和...

    javascript面向对象编程pdf

    面向对象的JavaScript是本书的核心议题,它探讨了JavaScript中的OOP原理以及在现代JavaScript编程中的应用。 书中首先介绍了现代JavaScript编程的基础知识,强调了JavaScript作为一种彻底的面向对象语言的设计初衷...

    《JavaScript内核系列》和《JavaScript面向对象基础》

    《JavaScript内核系列》和《JavaScript面向对象基础》这两本书是深入理解JavaScript编程的重要资源。JavaScript,作为一种广泛应用于Web开发的脚本语言,其内核和面向对象特性是开发者必须掌握的基础知识。以下是对...

    深入浅出JavaScript对象模型

    ### 深入浅出JavaScript对象模型 #### JavaScript对象的本质 根据ECMA262规范,ECMAScript被定义为一种基于对象的语言而非传统的面向对象语言。这意味着在JavaScript中,对象被视为存储数据的一种大型数组形式,...

    JavaScript面向对象编程指南.pdf

    在JavaScript中,可以通过构造函数或类来创建对象,并利用访问器和修改器方法来实现封装。 **示例代码**: ```javascript function Person(name, age) { this._name = name; this._age = age; this.getName = ...

    JavaScript对象定义

    在本文中,我们将深入探讨JavaScript对象的定义、创建方法以及相关的工具和技术。 首先,我们要了解JavaScript对象的本质。对象是由键值对(key-value pairs)构成的集合,这些键可以是字符串或符号,而值可以是...

    javascript面向对象编程

    现代JavaScript程序设计之所以有别于早期的应用,是因为它得益于成千上万聪明程序员的不断实践和认同,促使许多概念得到升华,形成了今天的开发格局。 ### 面向对象的JavaScript 虽然面向对象的程序设计在编程领域...

Global site tag (gtag.js) - Google Analytics