JavaScript之自定义对象
JS除了一些常用方法和类以外,允许我们自己定义对象,在JS中自定义对象有三种可用的语法格式,分别为:
使用 Object
在 JavaScript 中,几乎所有的对象都是 Object 类型的实例,它们都会从 Object.prototype 继承属性和方法。
Object 构造函数创建一个对象包装器。
Object 构造函数,会根据给定的参数创建对象,具体有以下情况:
如果给定值是 null 或 undefined,将会创建并返回一个空对象。
如果传进去的是一个基本类型的值,则会构造其包装类型的对象。
如果传进去的是引用类型的值,仍然会返回这个值,经他们复制的变量保有和源对象相同的引用地址。
当以非构造函数形式被调用时,Object 的行为等同于 new Object()。
1、调用系统的构造函数创建对象
语法格式:
// 以构造函数形式来调用
new Object([value])
value 可以是任何值。
//初始化对象
var obj=new Object();//给对象新增属性obj.name='kd'obj.age='18'obj.gender='男'//给对象添加方法obj.eat=function(food){console.log(this.name+"正在吃"+food)}
//查看对象属性
console.log(obj.name);
console.log(obj.age);
console.log(obj.gender);
//调用对象方法
obj.eat('肉')
2、自定义构造函数创建对象
在JavaScript中,this通常指向的是我们正在执行的函数本身,或者是指向该函数所属的对象(运行时)
实例:
//准备一个构造方法
function Person(pname,page){this.pname=pname;
this.page=page;
this.eat=function(food){console.log(this.page+"岁的"+this.pname+"正在吃"+food);
}
}
var p=new Person('kd',18);
//查看对象属性
console.log(p.pname)
console.log(p.page)
//调用对象方法
p.eat('肉')
3、字面量的方式创建对象
语法格式:
其实就是大括号里面创建 name:value 对,然后 name:value 对之间以逗号 , 隔开。
{ name1 : value1, name2 : value2,...nameN : valueN }
案例
var person={name:"kd",age:"18",gender:"男",eat:function(food){console.log(this.age+"岁的"+this.gender+"孩子"+this.name+"正在吃"+food)}}
//查看对象属性
console.log(person.name)
console.log(person.age)
//调用对象方法
person.eat('水果')
JavaScript之自定义对象相关推荐
- JavaScript基础——自定义对象
目录 数据类型 创建对象的语法:创建一个obj的对象 参数 js中作用域分 两种 1.全局作用域 2.函数作用域 声明提前 1.变量的声明提前 2. 函数的声明提前 this指针 原型对象protot ...
- JavaScript 的自定义对象 、内置对象、 浏览器对象(window对象以及子对象)、Dom对象
JS 中的 Object从本质上看,Object 是一个构造函数,用于创建对象. console.dir(Object); //ƒ Object() var obj = new Object(1); ...
- JavaScript 允许自定义对象,运动兑换商品的小程序,微信步数兑换积分,会员营销软件,让顾客更加愿意来店消费,提升店铺的会员粘性及活越性
访问对象的属性 属性是与对象相关的值. 访问对象属性的语法是: objectName.propertyName 这个例子使用了 String 对象的 length 属性来获得字符串的长度: var m ...
- [置顶] 深入浅出Javascript(三)创建自定义对象以及属性、方法
怎么样创建一个对象? 利用Object创建自定义对象 JavaScript能够自定义对象来扩展程序的功能,不仅如此,它还能扩展JavaScript提供的内置对象,新增内置对象的属性或方法 例如下面代码 ...
- JavaScript 自定义对象 及 new()原理与实现 如何完整地手写实现new
JavaScript 自定义对象 及 new() 原理与实现 作者: 李俊才 邮箱 :291148484@163.com CSDN 主页:https://blog.csdn.net/qq_285502 ...
- JavaScript自定义对象
JavaScript自定义对象 2.1.类和对象的概念 所谓对象就是真实世界中的实体,对象与实体是一一对应的,也就是说现实世界中每一个实体都是一个对象,它是一种具体的存在,可以发现身边很多对象,汽 ...
- JavaScript 自定义对象
原文:JavaScript 自定义对象 在Js中,除了Array.Date.Number等内置对象外,开发者可以通过Js代码创建自己的对象. 目录 1. 对象特性:描述对象的特性 2. 创建对象方式: ...
- 小汤学编程之JavaScript学习day04——自定义对象、原型与原型链、BOM
一.自定义对象 1.对象的定义 2.对象的使用 二.原型与原型链 1.JS的继承结构图 2.关键点 三.BOM 1.window对象 2.document对象 3.lo ...
- JavaScript学习笔记:创建自定义对象
文章目录 一.利用构造函数模式创建自定义对象 二.采用原型模式创建自定义对象 三.采用混合模式创建自定义对象 四.采用动态原型模式创建自定义对象 一.利用构造函数模式创建自定义对象 使用构造函数可以创 ...
最新文章
- J2EE环境的搭建之二—oracle的安装与详解
- Java初学者必看2
- ADO.NET中带参数的Sql语句的陷阱
- 四川网络推广介绍搜索引擎从哪几个方面判断网站质量好坏?
- makefile笔记
- PAT甲级1003 Emergency:[C++题解]dijkstra求最短路、最短路条数
- python预测模型_Python多元线性回归-sklearn.linear_model,并对其预测结果评估
- 轻量级KVO ——》 KVO 管理 observeValueForKeyPath
- C# 之 日常问题积累(一)
- 33.MySQL高可用架构
- Python基础灬函数补充(作用域,迭代器,生成器)
- vue项目开发之v-for列表渲染的坑
- Shreder:线程SSH协议密码爆破工具
- 暴风一号 病毒 源码学习
- 2016 年数学真题
- 新国标下的2020年电动单车企业蓬勃发展
- Android DNS之gethostbyname()的实现
- 51nod1538: 一道难题(特征多项式+多项式取模/求逆)
- 对求一个数的各个位数的理解
- ofo小黄车仍在自动续费!如何关闭微信自动扣费?
热门文章
- 天津php二次开发培训,天津PHP后台开发培训短期班
- 万维网报务器与浏览器各有什么功能,浏览器是如何获得服务器上的信息的,第3章因特网的应用.ppt...
- 成功解决pandas.core.indexing.IndexingError: Too many indexers
- 成功解决RuntimeError: Decompression ‘SNAPPY‘ not available. Options: [‘GZIP‘, ‘UNCOMPRESSED‘]
- NLP之TEA:基于SnowNLP实现自然语言处理之对输入文本进行情感分析(分词→词性标注→拼音简繁转换→情感分析→测试)
- IDE之Visual Studio Code:Visual Studio Code的简介、安装、使用方法之详细攻略
- Error: Visual Inheritance is currently disabled because the base … (NET CF)
- MapReduce-TextInputFormat 切片机制
- mysql主从复制同步
- css中background-image背景图片路径设置