当前位置: 首页 > news >正文

JavaScript 语法-对象

对象

JavaScript 中的对象是一组键值对的集合,其中每个键都是字符串,每个值可以是任意类型。
对象是由一些属性和方法组成的集合,属性可以用来存储数据,方法可以用来操作数据。
属性和方法使用“.”来访问

// 创建一个对象
let person = {name: "John",           // 属性age: 30,                // 属性greet: function() {     // 方法console.log("Hello, my name is " + this.name);}
};// 访问属性
console.log(person.name);   // John
console.log(person.age);    // 30// 调用方法
person.greet();            // Hello, my name is John

JavaScript 中的对象是动态的,这意味着它们可以根据需要添加、删除、修改属性和方法。

// 添加属性
person.city = "New York";// 删除属性
delete person.age;// 修改属性
person.name = "Jane";// 调用方法
person.greet();            // Hello, my name is Jane

JavaScript 中的对象是可变的,这意味着它们可以被修改,而不是创建新的对象。

JavaScript 中的对象是引用类型,这意味着它们在内存中存储在堆上,而不是栈上。这意味着当一个对象被创建时,它在内存中有一个唯一的标识符,并且可以通过这个标识符来访问它。

// 创建两个对象
let person1 = person;
let person2 = person;// 修改 person1 的属性
person1.age = 30;// 打印 person2 的属性
console.log(person2.age);   // 30

在上面的例子中,person1 和 person2 指向同一个对象,当修改 person1 的属性时,person2 也会受到影响。这就是 JavaScript 中的对象是可变的原因。

JavaScript 中的对象是动态的,这意味着它们可以根据需要添加、删除、修改属性和方法。这就是 JavaScript 中的对象是动态的原因。

JavaScript 中的对象是引用类型,这意味着它们在内存中存储在堆上,而不是栈上。这意味着当一个对象被创建时,它在内存中有一个唯一的标识符,并且可以通过这个标识符来访问它。这就是 JavaScript 中的对象是引用类型。

总结:JavaScript 中的对象是一组键值对的集合,其中每个键都是字符串,每个值可以是任意类型。对象是由一些属性和方法组成的集合,属性可以用来存储数据,方法可以用来操作数据。属性和方法使用“.”来访问。JavaScript 中的对象是动态的,这意味着它们可以根据需要添加、删除、修改属性和方法。JavaScript 中的对象是可变的,这意味着它们可以被修改,而不是创建新的对象。JavaScript 中的对象是引用类型,这意味着它们在内存中存储在堆上,而不是栈上。

内置对象

JavaScript 有一些内置对象,它们是 JavaScript 运行时环境的一部分。这些对象提供了一些常用的功能,可以用来处理数据、执行常见的操作,比如字符串、数组、日期、正则表达式等。

DATE 对象:Date 对象用于处理日期和时间。
ARRAY 对象:Array 对象用于处理数组。
STRING 对象:String 对象用于处理字符串。
NUMBER 对象:Number 对象用于处理数字。

宿主对象

JavaScript 有一些宿主对象,是浏览器提供的对象,用来处理浏览器特定的功能,比如 DOM、BOM、Web Storage、Web Worker、Canvas、WebGL 等。

DOM 对象:Document Object Model(文档对象模型)是 HTML 和 XML 文档的编程接口。
BOM 对象:Browser Object Model(浏览器对象模型)提供了与浏览器进行交互的方法和属性。
Web Storage 对象:Web Storage 对象提供了一种在浏览器中存储数据的机制,可以将数据存储在本地,而不是在服务器上。
Web Worker 对象:Web Worker 对象允许 JavaScript 脚本创建多个线程,在后台运行,不会影响页面的性能。
Canvas 对象:Canvas 对象用于绘制图形。
WebGL 对象:WebGL 对象用于绘制高性能的 2D 和 3D 图形。

参考

  • JavaScript 对象
  • JavaScript 内置对象
  • JavaScprpt DOM 编程艺术(第2版)
  • 主要内容由Fitten Code生成, 强烈推荐
http://www.lryc.cn/news/320571.html

相关文章:

  • 代码随想录阅读笔记-哈希表【四数之和】
  • JVM学习——双亲委派机制
  • 【Paper Reading】6.RLHF-V 提出用RLHF的1.4k的数据微调显著降低MLLM的虚幻问题
  • Aloudata 倾力打造,《Data Fabric 白皮书 2.0》正式发布
  • docker内部无法使用ping等网络工具解决方案
  • 后端工程师快速使用vue和Element
  • 自学rabbitmq入门到精通
  • 由浅到深认识C语言(13):共用体
  • python爬虫(9)之requests模块
  • phpstudy自定义安装mysql8.3并启动
  • Netty 学习资料
  • 【概率论中的两种重要公式:全概率和贝叶斯】
  • python中的闭包
  • 成功解决RuntimeError: OpenSSL 3.0‘s legacy provider failed to load
  • 【 React 】React 组件之间如何通信?
  • 汇总全网免费API,持续更新(新闻api、每日一言api、音乐。。。)
  • Android SystemServer进程解析
  • Github主页设置贪吃蛇详细教程
  • 二、实现fastdfs文件上传与延迟删除功能的Spring Boot项目
  • Android FrameWork 学习路线
  • 前端开发者如何打造自己的生态以及ip
  • C语言实现一个两个数加减乘除的答题代码(含文件保存),用户增加,题目增加,题目测试,题目答题等等
  • YOLOv9改进策略:注意力机制 | 用于微小目标检测的上下文增强和特征细化网络ContextAggregation,助力小目标检测,暴力涨点
  • 基于单片机的老人防丢系统设计
  • 从海外开发者大会的亲身体悟聊起,谈谈 AI 与开发者关系的重构 | 编码人声
  • HTML_CSS练习:HTML注释
  • 面试官问我Java异步编程用过吗?我直接说了6种方式!
  • 一维坐标的移动(bfs)
  • 面试题 整理
  • 苍穹外卖-day08:导入地址簿功能代码(单表crud)、用户下单(业务逻辑)、订单支付(业务逻辑,cpolar软件)