JavaScript创建自定义对象

// 1.工厂函数(factory function)
function createCat(catName) {
    var oCat = new Object();
    oCat.name = catName;
    oCat.color = "black";
    oCat.call = "Miao~";
    oCat.run = function() {
        alert(this.name + " is running!");
    };
    return oCat;
}

var oCat1 = createCat("Tom");
oCat1.run();

var oCat2 = createCat("Ken");
oCat2.run();

// 2.构造函数方法
function Dog(dogName, dogColor) {
    this.name = dogName;
    this.color = dogColor;
    this.call = function() {
        alert(this.name + " boof!");
    };
}

var dog1 = new Dog("Bob", "black");
alert("dog1.name " + dog1.name + " dog1.color " + dog1.color);
dog1.call();
var dog2 = new Dog("Poppy", "color");
alert("dog2.name " + dog2.name + " dog2.color " + dog2.color);
dog2.call();

// 3.构造函数+原型方法
function Person(personId, personName) {
    this.id = personId;
    this.name = personName;
    this.hobby = new Array();
}
Person.prototype.driver = function() {
    alert(this.name + " driver Car");
};

var person1 = new Person(1, "Joe");
person1.hobby.push("Reading");
person1.hobby.push("Shoot");
alert("person hobby:" + person1.hobby);
person1.driver();

var person2 = new Person(2, "Make");
person2.hobby.push("Paint");
person2.hobby.push("Sport", "Eating");
alert("person hobby:" + person2.hobby);
person2.driver();
时间: 2024-12-28 08:34:30

JavaScript创建自定义对象的相关文章

Exchange 2013 PowerShell创建自定义对象

PowerShell是一个基于对象的Shell,在写一行程序,脚本和函数时,給了我们很大的灵活性.当生成详细的报告时,我们需要从代码中自定义我们的数据输出,或者可以通过管道输送到其它的命令.我们还需要能够控制和定制代码的输出,这样我们可以合并来自多个源的数据到一个单独的对象.在这一节中,我们将学习下基本的构建定制的对象 首先我们要做的时创建一个邮箱对象的集合,将用来作为一组新的自定义对象的数据源: $mailboxes = Get-Mailbox 可以添加自定义的属性用于后续整个管道的对象属性,

JavaScript创建Map对象(转)

JavaScript 里面本身没有map对象,用JavaScript的Array来实现Map的数据结构. Js代码   /* * MAP对象,实现MAP功能 * * 接口: * size()     获取MAP元素个数 * isEmpty()    判断MAP是否为空 * clear()     删除MAP所有元素 * put(key, value)   向MAP中增加元素(key, value) * remove(key)    删除指定KEY的元素,成功返回True,失败返回False * 

JavaScript实现自定义对象的自定义事件

前言: 大家都知道,在使用JavaScript可以很方便的使用addEventListener函数给DOM对象快速绑定一个或多个事件侦听器. 我们又如何在JavaScript的自定义对象中使用此方法并触发事件呢?这就是本章节的核心内容了. 目的: 现在有一个需求,要求"a对象"能够让"b对象"做一系列动作. 分析后我们得知.首先,"b对象"有一个固定名称作为入口让a对象调用,并且这个入口可以自动检索所有符合这个动作要求的函数并依次触发. 实现:

JavaScript中创建自定义对象的方法

本文内容参考JavaScript高级程序设计(第3版)第6章:面向对象的程序设计 ECMA-262中把对象定义为:“无序属性的集合,其属性可以包含基本值.对象或者函数.”我所理解的就是对象就是一个结构体,结构体中有一些它的基本属性以及对结构体处理的方法,把它们封装起来称为一个整体.JS中所有的对象都是基于一个引用类型创建,这个引用类型可以是原生类型,如Array,Date等,也可以是开发人员自定义的类型. 下面主要总结下JS中创建对象的几种模式,分析他们各自的优缺点. 1. 工厂模式 /****

Javascript 中创建自定义对象的方法(设计模式)

Javascript 中创建对象,可以有很多种方法. Object构造函数/对象字面量: 抛开设计模式不谈,使用最基本的方法,就是先调用Object构造函数创建一个对象,然后给对象添加属性. 1 var student = new Object(); 2 student.name = "xiao ming"; 3 student.age = 20; 4 student.getName = function () { 5 alert(this.name); 6 } 熟悉javascrip

Javascript创建空对象和空数组的几个方法和差别

以下是三种创建空对象的方法: var emptyObj1 = {}; var emptyObj2 = new Object(); var emptyObj2 = Object.create(Object.prototype); 他们对Javascript来说是一样的,新创建的三个对象会继承object所有的属性和方法,所以emptyObj1.toString等于Object.prototype.toString.但是要注意,{}.toString是会报错的! 类似的还有空数组问题: var em

JavaScript学习-自定义对象/

JavaScript学习 [自定义对象] 1.基本概念 ① 对象概念: 对象是包含一系列无序属性和方法的集合: ② 对象中的数据,是以键值对形式存在的,以键取值: ③ 属性:描述对象特征的一系列变量.[对象中的变量]: ④ 方法:描述对象行为的一系列方法.[对象中的函数]: 2.对象的声明: ① 字面量声明: var ovj={ key1:value1, //属性 key2:value2 func:function(){} //方法 } ② 对象中的键,可以是任何数据类型.但,一般用作普通变量名

JS 创建自定义对象的方式方法

一.概述 还记得刚开始做项目的时候,看到别人封装的js工具类百思不得其解,看来看去看不懂,深挖一下,其实就是自己没有耐下心去看,但是遇到问题不解决,总会遇到的,今天还是遇到了,就去找了找帖子,重新思考与实践一下,豁然开朗~!在此记录一下迟来顿开的茅塞. 关于JS 对象,啊,对象么,不就是一个个实例么,是的,js 也可以创建类,创建对象,创建对象方法,我们今天就具体说一下. 二.创建与使用(开始) es 标准给我们提供了String.Math.Array等等这些js对象,当我们使用的时候只需要ne

JS创建自定义对象

创建对象: 1.people = new Object(); people.name = "lin"; people.age = "26“; 2.创建字典对象 people = {name:"lin",age:"30"}; 3.通过set方法创建对象 function people(name,age){ this._name = name; this._age = age; } son = people("lin",