`
lushuaiyin
  • 浏览: 677287 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

JavaScript 创建类/对象的几种方式 (经典)

 
阅读更多

在JS中,创建对象(Create Object)并不完全是我们时常说的创建类对象,JS中的对象强调的是一种复合类型,JS中创建对象及对对象的访问是极其灵活的。

JS对象是一种复合类型,它允许你通过变量名存储和访问,换一种思路,对象是一个无序的属性集合,集合中的每一项都由名称和值组成(听起来是不是很像我们常听说的HASH表、字典、健/值对?),而其中的值类型可能是内置类型(如number,string),也可能是对象。

一、由一对大括号括起来

复制代码
varemptyObj={};
varmyObj=
{
'id':1,//属性名用引号括起来,属性间由逗号隔开
'name':'myName'
};
//varm=newmyObj();//不支持
复制代码
  不知你注意到对象都是用 var 声明的没有,像上面的代码,就只是简单的声明一个对象,它只有一份拷贝,你不能像实例化类对象一样对它采用new操作,像上面代码的注释部分。这样就极大的限制了对象的重用,除非你建立的对象只需要一份拷贝,否则考虑用其他方法建立对象。
  下面一起看看如何访问对象的属性和方法。
复制代码
varmyObj=
{
'id':1,
'fun':function(){
document.writeln(
this.id+'-'+this.name);//以"对象.属性"方式访问
},
'name':'myObj',
'fun1':function(){
document.writeln(
this['id']+'+'+this['name']);//以集合方式访问
}
};
myObj.fun();
myObj.fun1();
//结果
//1-myObj1+myObj
复制代码
二、用 function 关键字模拟 class
在 function 中用 this 引用当前对象,通过对属性的赋值来声明属性。如果用var声明变量,则该变量为局部变量,只允许在类定义中调用。
复制代码
functionmyClass(){
this.id=5;
this.name='myclass';
this.getName=function(){
returnthis.name;
}
}
varmy=newmyClass();
alert(my.id);
alert(my.getName());
//结果
//5
//myclass
复制代码
三、在函数体中创建一个对象,声明其属性再返回
在函数体中创建对象可利用第一点的方法,或先 new Object(); 再为各属性赋值。
不过用这种方式创建的对象在VS2008 SP1中是没有智能提示的。
复制代码
functionmyClass(){
varobj=
{
'id':2,
'name':'myclass'
};
returnobj;
}
function_myClass(){
varobj=newObject();
obj.id
=1;
obj.name
='_myclass';
returnobj;
}
varmy=newmyClass();
var_my=new_myClass();
alert(my.id);
alert(my.name);
alert(_my.id);
alert(_my.name);

//结果
//2
//myclass
//1
//_myclass
复制代码
分享到:
评论

相关推荐

    JavaScript创建类/对象的几种方式概述及实例

    JS中的对象强调的是一种复合类型,JS中创建对象及对对象的访问是极其灵活的,下面与大家分享下创建类/对象的几种方式,感兴趣的朋友可以了解下哈

    JavaScript中创建类/对象的几种方法总结

    主要是对JavaScript中创建类/对象的几种方法进行了详细的总结介绍,需要的朋友可以过来参考下,希望对大家有所帮助

    JavaScript学习之二 — JavaScript创建对象的8种方式

    NULL 博文链接:https://yueyemaitian.iteye.com/blog/781915

    【JavaScript源代码】详解js创建对象的几种方式和对象方法.docx

    详解js创建对象的几种方式和对象方法  这篇文章是看js红宝书第8章,记的关于对象的笔记(第二篇)。 创建对象的几种模式:  工厂是函数的意思。工厂模式核心是定义一个返回全新对象的函数。 function getObj...

    javascript中创建对象的几种方法总结

    以下几种,是javascript中最常用的创建对象的方式。初学者看到后,可能会晕掉,甚至会觉得担心。其实完全不用担心,这些种方式,只需要掌握一两种,对其他的几种只需要理解就好了

    javascript创建对象的3种方法

    第一种创建对象的方式: 创建JSON对象 推荐使用的场合: 作为函数的参数,临时只用一次的场景。比如设置函数原型对象。 var object = { name: "Eric", age: 24, sayHi: function(){ console.log("My name is ...

    Javascript创建类和对象详解

    现总结一下Javascript创建类和对象的几种方法: 1、原始的创建方法: [removed] var person = new Object(); person.name="Amy"; person.sex="Woman"; person.show=function(){ [removed]("name is: "+this....

    详细分析Javascript中创建对象的四种方式

    详细介绍了Javascript中创建对象的几种方式与每种方式的优缺点,其中包括工厂模式、构造函数模式、原型模式和组合使用构造函数模式和原型模式,有需要的小伙伴们一起来学习学习吧。

    JavaScript定义类的几种方式总结

    提起面向对象我们就能...javaScript中创建自己的类和对象,我们应该是必须掌握的,我们都知道javaScript中对象的属性可以在对象创建后动态定义,比如下面的代码: 代码如下:[removed] //定义 var oCar = new Objec

    js面向对象之常见创建对象的几种方式(工厂模式、构造函数模式、原型模式)

    在上篇文章给大家介绍了javascript面向对象基础,本篇文章继续深入学习javascript面向对象,JS的语法非常灵活,简单的对象创建就有好几种不同的方法。这些过于灵活的地方有时候确实很让人迷惑,那么今天我们就来梳理...

    深入理解JavaScript创建对象的多种方式以及优缺点

    本篇文章主要介绍了JavaScript创建对象的多种方式以及优缺点,主要介绍了5种方式,有兴趣的可以了解下

    JavaScript 三种创建对象的方法

    JavaScript中对象的创建有以下几种方式: (1)使用内置对象 (2)使用JSON符号 (3)自定义对象构造 一、使用内置对象 JavaScript可用的内置对象可分为两种: 1,JavaScript语言原生对象(语言级对象),如String、...

    javascript创建对象的几种模式介绍

    下面小编就为大家带来一篇javascript创建对象的几种模式介绍。小编觉得挺不错的,现在分享给大家,也给大家做个参考

    JavaScript创建对象的七种方式(推荐)

    JavaScript创建对象的方式有很多,通过Object构造函数或对象字面量的方式也可以创建单个对象,显然这两种方式会产生大量的重复代码,并不适合量产。接下来介绍七种非常经典的创建对象的方式,他们也各有优缺点

    【JavaScript源代码】JavaScript中的几种继承方法示例.docx

    JavaScript中的几种继承方法示例  1.原型链继承  原理: 子类原型指向父类实例对象实现原型共享,即Son.prototype = new Father()。 这里先简单介绍下原型 js中每个对象都有一个__proto__属性,这个属性指向的...

    JavaScript定义类或函数的几种方式小结

    工厂方式 javaScript中创建自己的类和对象,我们应该是必须掌握的,我们都知道javaScript中对象的属性可以在对象创建后动态定义,比如下面的代码: 代码如下: [removed] //定义 var oCar = new Object();

Global site tag (gtag.js) - Google Analytics