Javascript中五种定义对象的方法
在javascript中,对象是拥有属性和方法的数据
本次主要讨论五种定义对象的方法
1.直接定义
创建语法:
var 对象变量名 = new Object();
对象变量名.属性1 = 属性值1;
…;
对象变量名. 属性N = 属性值N;
对象变量名. 方法1 = function([参数列表]){方法体
}
…;
对象变量名. 方法N = function([参数列表]){方法体
}
代码示例:
var student = new Object();student.name="Lucy";student.eat=function(){console.log(this.name+"正在吃东西");}student.eat();
2.初始化定义:
创建语法:
var 对象变量名={属性1:属性值1,...,属性N:属性值N,方法1:function([参数列表]){方法体},...,方法N:function([参数列表]){方法体}
}
注意:
1.属性的定义用:(英文冒号)
2.对象的属性和方法之间用,(英文逗号)隔开,最后一个不加
代码示例:
var student = {name:"Tim", //注意属性的定义用:age:12,eatting:function(){console.log(this.name+"正在吃东西");},running:function(){console.log(this.name+"正在跑步");}
};
student.eatting();
student.running();
3.构造函数式
创建语法:
function 构造函数([参数列表]){this.属性1=属性值;...;this.属性N=属性值;this.方法1=function([参数列表]){方法体};...;this.方法N=function([参数列表]){方法体};
}
var 对象名 = new 构造函数([参数列表]);
代码示例:
function Student(name){this.name=name;this.eatting=function(){console.log(this.name+"正在吃东西");};
}
var stu = new Student("Lily");
stu.eatting();
4.原型式
创建语法:
function 对象创建器(){
};
对象创建器.prototype.属性=属性值;
对象创建器.prototype.方法=function([参数列表]){方法体
};
var 对象名 = new 对象创建器([参数列表]);
代码示例:
function Student(){}Student.prototype.name="Kitty";Student.prototype.eatting=function(){console.log(this.name+"正在吃东西");};var stu = new Student();stu.eatting();
5.混合式
由于构造方法式中创建对象时添加属性很容易,但是创建方法要在构造方法内部容易导致方法混乱;原型式创建对象时添加属性比较麻烦,创建方法相对容易。所以结合两者的优点就有了混合式。
创建语法:
function 构造函数([参数列表]){this.属性1=属性值;...;this.属性N=属性值;};
}
对象创建器.prototype.方法=function([参数列表]){方法体
};
var 对象名 = new 构造函数([参数列表]);
代码演示:
function Student(name){this.name=name;
}
Student.prototype.eatting=function(){console.log(this.name+"正在吃东西");
};
var stu = new Student("Linda");
stu.eatting();
Javascript中五种定义对象的方法相关推荐
- javascript中五种常见的DOM方法
getElementById将返回一个与那个有着给定id属性值的元素节点对应的对象. <html xmlns="http://www.w3.org/1999/xhtml"&g ...
- Unity(游戏)中五种数据存储的方法
Unity(游戏)中五种数据存储的方法 一.PlayerPrefs unity3d提供了一个用于本地持久化保存与读取的类-------PlayerPrefs.工作原理很简单,以键值对的形式将数据保存在 ...
- 前端百题斩【020】——竟然有五种方式实现flat方法
写该系列文章的初衷是"让每位前端工程师掌握高频知识点,为工作助力".这是前端百题斩的第20斩,希望朋友们关注公众号"执鸢者",用知识武装自己的头脑. 20.1 ...
- 惊呆了,Spring中竟然有12种定义bean的方法
前言 在庞大的 Java 技术体系中,Spring 有着举足轻重的地位,它给每位开发者带来了极大的便利和惊喜. 我们都知道 Spring 是创建和管理bean的工厂,它提供了多种方式定义 bean,能 ...
- java定义数组_java中数组的三种定义方式_java中数组的定义及使用方法(推荐)...
java中数组的三种定义方式 java中,数组是一种很常用的工具,今天我们来说说数组怎么定义 [java] view plain copy /** * 数组的三种定义方法 * 1.数组类型[] 数组名 ...
- JavaScript的5种调用函数的方法
这篇文章详细的介绍了Javascript中各种函数调用的方法及其原理,对于理解JavaScript的函数有很大的帮助! JavaScript,调用函数的5种方法 一次又一次的,我发现,那些有bug的J ...
- JavaScript 中的内置对象——0606、0607笔记整理
一.JavaScript String 对象 1.String 对象 String 对象也是字符串. var s1="abcdefg"; 常规定义的字符串: var s2=new ...
- java简述常见的布局极其特点_请简要说明 Android 中五种常见布局的特点。_学小易找答案...
[简答题]请简要说明有序广播和无序广播的区别 [简答题]请简要说明 Android 程序结构中 AndroidManifest.xml 的功能? [简答题]简述李村站人工办理进路的作业过程. [简答题 ...
- 深入理解C++中五种强制类型转换的使用场景
深入理解C++中五种强制类型转换的使用场景 1.C风格的强制类型转换 2.C++风格的强制类型转换 2.1.static_cast 2.1.1.用于基本内置数据类型之间的转换 2.1.2.用于指针之间 ...
- python中五种下划线 _
python中五种下划线 "_" 单前导下划线:_var 单末尾下划线:var_ 双前导下划线:__var 双前导和末尾下划线:var 单下划线:_ 在文章结尾处,你可以找到一个简 ...
最新文章
- c语言删除文件中的数据_第20问:删除了数据文件,该往哪个方向逃跑
- python 元组使用_Python3
- One order popup window 显示逻辑
- exo文件_您在eXo平台上的第一个Juzu Portlet
- MyBatis的学习之路(二)
- 项目助理这个工作怎么样_分析微信清理僵尸粉这个项目怎么样?
- 有趣 IOS 开展 - block 使用具体解释
- python二维数组初始化_如何在Python中初始化二维数组?
- js最新手机号码、身份证正则表达式
- 跨考武汉大学计算机专业,武汉大学计算机专业考研心得_跨考网
- PS5运行Linux,索尼发布最新驱动!PS5手柄现在已支持Linux系统
- 开课吧:大数据时代,数据分析的特点是什么?
- 记录wuyi公积金调用过程
- python中else与for_在Python中使用else条件语句和for循环
- javaweb实现即时消息推送功能
- Android Camera聚焦区域和测光区域的设置
- GNSS 周跳探测方法 之 TurboEdit
- Python 结巴(jieba)库之花拳绣腿
- Surface Book2 购买、使用、体验
- Chrome无头模式获取直播间弹幕
热门文章
- 谈谈“天轰穿”老师对VS2005的视频讲座
- HTML页面的全屏显示-Fullscreen API
- 「 机器人学 」机器人与控制工程基础浅谈
- java音量调节_音量控制setVolumeControlStream
- Ubuntu系统安装搜狗(sougou for linux)输入法详细教程
- 计算机车辆识别检测毕业设计,车辆识别论文,关于基于计算机网络技术的车辆识别技术相关参考文献资料-免费论文范文...
- java netbean_java NetBean创建及各菜单项相对应的窗体及布局教程.pdf
- [转载]希捷固件门7200.12 CC46固件升级方法
- 从零开始了解 kubernetes,还有谁不会?
- Themida和Winlicense加壳软件脱壳教程