带你了解 JavaScript 中的对象

带你了解 JavaScript 中的对象

基本概念

对象指的就是一个具体的事物,在JavaScript中, 字符串, 数值, 数组, 函数都是对象

每个对象中包含若干的属性和方法

属性: 事物的特征
方法: 事物的行为

1.使用字面量创建对象

使用{ }创建对象

属性和方法使用键值对的形式来组织
键值对之间使用 ,分割,最后一个属性后面的,可以省略
键和值之间使用 : 分割,方法的值是一个匿名函数

示例代码

let a = {}
let student = {
    name: "liaofeiyang",
    height: "170",
    weight: "60kg",
    sayHello:function() {
        console.log("hello")
    }
}

访问对象的属性

1.使用 . 成员访问运算符来访问属性
2.使用 [ ] 访问属性, 此时属性需要加上引号

console.log(student.name)
console.log(student['height'])
console.log(student['weight'])

调用对象的方法

student.sayHello()



2.使用new Object创建对象

示例代码

let student = new Object()
student.name = "fly"
student.height = 180
student['weight']= 75
student.SayHello = function() {
    console.log("Say Hello")
}

console.log(student.name)
console.log(student['height'])
student.SayHello()

注:可以随时使用student.name = "fly"; 这样的方式来新增属性

运行结果

image-20240303205100473



3.使用构造函数创建对象

优势: 使用构造函数可以快速批量的创建对象,而上述前面的2个创建对象的方式一次只能创建一个对象

基本语法

function 构造函数名(形参) {
    this.属性 =;
    this.方法 = function...
}
    
let fly = new 构造函数名(实参);

注意事项:

在构造函数内部使用 this 关键字来表示当前正在构建的对象
构造函数的函数名首字母一般是大写的
构造函数的函数名可以是名词
创建对象的时候必须使用 new 关键字

示例代码

function People(name, height, weight) {
    this.name = name
    this.height = height
    this.weight = weight
    this.Say = function() {
        console.log(name + " say hello")
    }
}
let xiaoming = new People("小明", 172, 65)
let zhangsan = new People("张三", 169, 74)
console.log(xiaoming)
xiaoming.Say()
console.log(zhangsan)
zhangsan.Say()

运行结果
image-20240303210914908

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/425569.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

linux高级编程:线程(二)、进程间的通信方式

线程: 回顾线程(一): 1.线程间通信问题 线程间共享同一个资源(临界资源) 互斥: 排他性访问 linux系统 -- 提供了Posix标准的函数库 -- 互斥量(互斥锁) 原子操作&#x…

1.1 简述卷积的基本操作,卷积和全连接层的区别?

1.1 简述卷积的基本操作,卷积和全连接层的区别? 摘要: 全连接层的输出层每个节点与输入层的所有节点连接。 卷积层具有局部连接和权值共享的特性。 问题:简述卷积的基本操作,并分析其与全连接层的区别。 分析与解答&a…

【计算机网络】深度学习HTTPS协议

💓 博客主页:从零开始的-CodeNinja之路 ⏩ 收录文章:【计算机网络】深度学习HTTPS协议 🎉欢迎大家点赞👍评论📝收藏⭐文章 目录 一:HTTPS是什么二:HTTPS的工作过程三:对称加密四:非对称加密五:中间人攻击1…

JAVA内存模型与JVM内存结构

注意区分Java内存模型(Java Memory Model,简称JMM)与Jvm内存结构,前者与多线程相关,后者与JVM内部存储相关。本文会对两者进行简单介绍。 一、JAVA内存模型(JMM) 1. 概念 说来话长,由于在不同硬件厂商和…

详解动态规划(算法村第十九关青铜挑战)

不同路径 62. 不同路径 - 力扣(LeetCode) 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finis…

重载(Overload)和重写(Override)的区别。重载的方法能否根据返回类型进行区分?

大家好我是苏麟 , 今天开始又一个专栏开始了(又一个坑 哈哈) . 重载(Overload)和重写(Override)的区别。重载的方法能否根据返回类型进行区分? 方法的重载和重写都是实现多态的方式,区别在于前者实现的是编…

pyqt5怎么返回错误信息给页面(警告窗口)

在软件设计中,我们可能会遇到对异常的处理,有些异常是用户需要看到的,比如说,当我们登录出错的时候,后端需要给我们返回响应的错误信息,就像下图实现的这样。 类似这种效果,我们该如何实现&…

C++真题列表

题目解析:RAM是闪存,只要一关机一拔电,就会丢失数据 题目解答:A 题目解析:TXT格式是文本文档 题目解答:B 题目解析:IP地址中每一个字节的取值范围是[0~255],是不可能有256的 题目…

2024最新算法:美洲狮优化算法(Puma Optimizar Algorithm ,POA)求解23个基准函数(提供MATLAB代码)

一、美洲狮优化算法 美洲狮优化算法(Puma Optimizar Algorithm ,POA)由Benyamin Abdollahzadeh等人于2024年提出,其灵感来自美洲狮的智慧和生活。在该算法中,在探索和开发的每个阶段都提出了独特而强大的机制&#xf…

TDengine 在 DISTRIBUTECH 分享输配电数据管理实践

2 月 27-29 日,2024 美国国际输配电电网及公共事业展(DISTRIBUTECH International 2024)在美国-佛罗里达州-奥兰多国家会展中心举办。作为全球领先的年度输配电行业盛会,也是美洲地区首屈一指的专业展览会,该展会的举办…

干货!Python获取字典元素

1.访问字典中的元素 第一种方式:通过key访问 dict1 {"name":"中国医生", "author":"刘伟强", "person":"张涵予"} print(dict1["author"]) # 刘伟强 # print(dict1["price"…

八. 实战:CUDA-BEVFusion部署分析-分析BEVFusion中各个ONNX

目录 前言0. 简述1. camera.backbone.onnx(fp16)2. camera.backbone.onnx(int8)3. camera.vtransform.onnx(fp16)4. fuser.onnx(fp16)5. fuser.onnx(int8)6. lidar.backbone.xyz.onnx7. head.bbox.onnx(fp16)总结下载链接参考 前言 自动驾驶之心推出的《CUDA与TensorRT部署实战…

ArrayList集合源码分析

ArrayList集合源码分析 文章目录 ArrayList集合源码分析一、字段分析二、构造方法分析三、方法分析四、总结 内容如有错误或者其他需要注意的知识点,欢迎指正或者探讨补充,共同进步。 一、字段分析 //默认初始化容量。这里和Vector一样,只是…

Maven实战(2)之搭建maven私服

一, 背景: 如果使用国外镜像,下载速度比较慢; 如果使用阿里云镜像,速度还算OK,但是假如网速不好的时候,其实也是比较慢的; 如果没有网的情况下更加下载不了. 二, 本地仓库、个人/公司私服、远程仓库关系如下: 三, 下载安装nexus私服 略

Git 指令深入浅出【1】—— 文件管理

Git 指令深入浅出【1】—— 文件管理 一、新建仓库二、配置1. 基本指令2. 免密配置3. 简化指令 三、管理文件1. 常用文件管理指令(1)基本指令工作区暂存区版本库 (2)日志(3)查看修改 2. 版本回退&#xff0…

每日五道java面试题之mysql数据库篇(三)

目录: 第一题. 百万级别或以上的数据如何删除?第二题. 前缀索引第三题. 什么是最左前缀原则?什么是最左匹配原则?第四题. B树和B树的区别第五题. 使用B树和B树好处 第一题. 百万级别或以上的数据如何删除? 关于索引:…

奇酷网络董事长吴渔夫:以AI思维引领游戏制作,慢工出细活

文 | 大力财经 奇酷网络是一家以“AI游戏”为核心理念的创业公司,其独特的运营模式和理念备受瞩目。公司采用基于“AI思维”的运作方式,形成了与传统互联网思维鲜明对比的“超级个体公司”模式。尽管全职员工仅有两名,但公司CEO采取“以一打…

CPU漏洞之Spectre

一、前言 在过去的几十年里,一些微架构设计技术促进了处理器速度的提高。其中一个进步是推测执行(Speculative execution),它被广泛用于提高性能,猜测CPU未来可能的执行方向,并提前执行这些路径上的指令。比如说,程序…

HarmonyOS—配置编译构建信息

在进行应用/服务的编译构建前,需要对工程和编译构建的Module进行设置。API Version 9、API Version 8与API Version 4~7的构建体系不同,因此在设置编译构建信息时也存在差异: API Version 9:需要对构建配置文件、构建脚本、应用依…

Cloud+Consul

Cloud整合Zookeeper代替Eureka-CSDN博客 Consul简介 Consul是一套开源的分布式服务发现和配置管理系统 What is Consul? | Consul | HashiCorp DeveloperConsul is a service networking solution that delivers service discovery, service mesh, and network security ca…