JavaScript简餐——对象是个啥?
目录
- 前言
- 一、对象是什么?
- 二、创建对象
- 1.创建Object的一个实例
- 2.使用对象字面量
- 总结
前言
写本《JavaScript简餐》系列文章的目的是记录在阅读学习《JavaScript高级程序设计(第4版)》一书时出现的各个知识点。虽是对读书的笔记和总结,但是希望它轻量、简洁、犀利,不会引起阅读疲劳,可以在碎片化时间和闲暇之余轻巧地沐浴一下知识点。每篇文章只针对一个小部分进行讲解式的梳理,来达到个人复习总结和分享知识的目的。
一、对象是什么?
对象不是什么新奇的东西,任何东西都可以看作对象。比如一个人,一个物品。人有名字、年龄和性别,物品有形状、价格和重量,各有各的属性。这也难怪ECMA-262(ECMAScript语言标准)将对象定义为:一组属性的无序集合。这些属性都可以有一个值,这个值可以是数据也可以是函数。话不多说,来看下面创建对象的具体例子。
二、创建对象
创建对象有两种方式:
- 创建Object的一个实例。
- 使用对象字面量。
1.创建Object的一个实例
尽管W3C标准不建议使用这种方式,但不管怎样先上代码:
let person = new Object();
person.name = 'Jack';
person.age = 29;
person.job = 'Soft Engineer';
person.sayname = function () {console.log(this.name);
}
这里创建了一个名为person的Object的实例,并且通过点操作符为它添加了name、age、job、sayname四个属性,前三个的值是数据,第四个是用来打印对象名字的函数。
2.使用对象字面量
let person = {name: 'Jack',age: 29,job: 'Software Engineer',sayname() {console.log(this.name);}
}
这个对象的内容与上面相同,不过注意几个要点:属性之间用逗号分开来,并且函数直接写成调用形式:函数行+括号。 当然你也可以像下面这样做:
let person = {}
person.name = 'Jack';
person.age = 29;
person.job = 'Software Engineer';
person.sayname = function () {console.log(this.name);
}
与第一种方法类似,只不过是用了对象字面量来定义的。
总结
以上就是今天要讲的内容,本文简单介绍了对象的定义和创建对象的两种方法,不过这两种方法还有些许不足,不能够满足创建对象的全部需求。下一篇我们来讲一下创建对象的各个模式来深入创建对象的知识!撒花~
JavaScript简餐——对象是个啥?相关推荐
- JavaScript简餐——细看函数的参数
文章目录 前言 一.理解参数 二.箭头函数中的参数 三.总结 前言 写本<JavaScript简餐>系列文章的目的是记录在阅读学习<JavaScript高级程序设计(第4版)> ...
- JavaScript简餐——创建对象的三种模式
文章目录 前言 一.工厂模式 二.构造函数模式 三.原型模式 总结 前言 写本<JavaScript简餐>系列文章的目的是记录在阅读学习<JavaScript高级程序设计(第4版)& ...
- JavaScript简餐——this关键字
文章目录 前言 一.this对象 二.区别实例 总结 前言 写本<JavaScript简餐>系列文章的目的是记录在阅读学习<JavaScript高级程序设计(第4版)>一书时出 ...
- JavaScript简餐——继承之原型链继承
文章目录 前言 一.实现方式 二.继承实例 三.问题所在 1.引用值误修改 2.子类型实例化时无法给父类构造函数传参 四.总结 前言 写本<JavaScript简餐>系列文章的目的是记录在 ...
- JavaScript简餐——关于盗用构造函数
文章目录 前言 一.什么是盗用构造函数? 二.使用实例 三.参数传递 四.盗用构造函数的问题所在 五.总结 前言 写本<JavaScript简餐>系列文章的目的是记录在阅读学习<Ja ...
- JavaScript简餐——闭包
文章目录 前言 一.闭包概念 二.闭包的副作用 三.闭包的用途 1.在函数外部读取函数的内部变量 2.利用外部函数变量缓存值 四.总结 前言 写本<JavaScript简餐>系列文章的目的 ...
- JavaScript简餐——初见Promise
文章目录 前言 一.Promise基础 1.Promise状态机 2.通过执行函数 控制Promise的状态 3.Promise.resolve() 4.Promise.reject() 5.同步/异 ...
- JavaScript简餐——初识函数
文章目录 前言 初始函数 1.函数声明 2.函数表达式 3.箭头函数(ES6新特性) 4.使用Function构造函数 总结 前言 写本<JavaScript简餐>系列文章的目的是记录在阅 ...
- JavaScript简餐——类构造函数
文章目录 前言 一.类的构造函数及其实例化 二.把类当成特殊函数 三.总结 前言 写本<JavaScript简餐>系列文章的目的是记录在阅读学习<JavaScript高级程序设计(第 ...
最新文章
- Android之线程安全的单例模式,Adapter注意事项之引用传值
- hdu 1087 最大递增和
- 拓展 NLog 优雅的输送日志到 Logstash
- [Java基础]List集合
- P3899-[湖南集训]谈笑风生【主席树】
- java教程百度文库,成功拿到offer
- MySQL和Mariadb都启动不了了_linux centos7mariadb安装成功启动不了 解决思路
- Kafka 消费者组 Rebalance 详解
- syslog 向内存中缓存_动画:深入浅出从根上理解 HTTP 缓存机制及原理!
- java递归实现多级菜单栏_Java构建树形菜单以及支持多级菜单的实例代码
- Android自动化测试之路——技术准备
- Rails测试《十》不能错过的杂七杂八
- lua-TestMore(转)
- Python数据处理041:数据分析之时间序列
- 3ds Max 文件修改版本工具
- angularJs-基础用法
- 36. 有效的数独(技巧)
- Latex的常见错误
- sklearn之线性回归实现—阿里云天池二手车交易价格预测赛
- Java Web之Cookie、Session
热门文章
- WinCE 访问服务器SqlServer
- 计算机课教学老师端,51好课堂教师端电脑版
- mysql自增id存在哪里_mysql返回自增id
- html 倒计时弹出框,JavaScript 实现简单的倒计时弹窗DEMO附图
- 仅使用python基本语法、即不使用任何模块、编写_仅此而已有关的唯美句子,人生仅此而已的句子...
- opencv python 编译_编译opencv python
- IOS 常用的安装包 deb、ipa 和 pxl
- vscode的格式化工具:eslint 、 prettier、editorconfig 和 vetur
- 服务器维护必刷稀有宠物,魔兽怀旧服,10年圆梦的稀有宠物,记一个魔兽老玩家的坚守...
- GTX2080的GPU版本caffe的环境