深入javascript对象语法及应用场景(一)

js各种实际场景的使用案例合集(全) 阅读详情

前言

      对象是javascript中的一个重要的概念,甚至有“JavaScript 中万物皆是对象”的说法,可以说对于熟悉javascript而言,精通对象的应用场景至关重要,那么到底什么是对象,对象在哪些地方又有怎样的用途呢,这一系列我将带大家深入javascript对象的语法及应用场景

正文

语法

      对象可以通过两种形式定义:声明(文字)形式和构造形式。这个没什么特别的大部分同学应该都知道,举个例子我们简单过一下

// 声明(文字)形式
var myObj = {
	key: value
	// ...
};
// 构造形式
var myObj = new Object();
myObj.key = value;

类型

      对象是 JavaScript 的基础。在 JavaScript 中一共有六种主要类型(术语是“语言类型”):String, string, number, boolean, null, undefined, object算上ES6中的symbol就是7种,简单基本类型(string、boolean、number、null 和 undefined)本身并不是对象。null 有时会被当作一种对象类型,但是这其实只是语言本身的一个 bug,即对 null 执行typeof null 时会返回字符串 “object”。1 实际上,null 本身是基本类型。

      所以,有一种常见的错误说法是“JavaScript 中万物皆是对象”,这显然是错误的。简单基本类型并不是对象

内置对象

      JavaScript 中还有一些对象子类型,通常被称为内置对象。有些内置对象的名字看起来和简单基础类型一样,不过实际上它们的关系更复杂: String, Number, Boolean, Object, Function, Array, Date, RegExp, Error。在 JavaScript 中,它们实际上只是一些内置函数。这些内置函数可以当作构造函数来使用,从而可以构造一个对应子类型的新对象。
      原始值 “I am a string” 并不是一个对象,它只是一个字面量,并且是一个不可变的值。如果要在这个字面量上执行一些操作,比如获取长度、访问其中某个字符等,那需要将其转换为 String 对象。在必要时语言会自动把字符串字面量转换成一个 String 对象,也就是说你并不需要显式创建一个对象,这也是为什么虽然是基本类型但是我们可以调用对应对象原型里的方法的原因

var strPrimitive = "I am a string";
console.log( strPrimitive.length ); // 13
console.log( strPrimitive.charAt( 3 ) ); // "m"

可计算属性名

      ES6 增加了可计算属性名,可以在文字形式中使用 [] 包裹一个表达式来当作属性名

var prefix = "foo";
var myObject = {
	[prefix + "bar"]:"hello",
	[prefix + "baz"]: "world"
};
myObject["foobar"]; // hello
myObject["foobaz"]; // world

      可计算属性名最常用的场景可能是 ES6 的符号(Symbol),它们是一种新的基础数据类型,包含一个不透明且无法预测的值(从技术角度来说就是一个字符串)。一般来说你不会用到符号的实际值(因为理论上来说在不同的 JavaScript 引擎中值是不同的),所以通常你接触到的是符号的名称,比如 Symbol.Something

var myObject = {
	[Symbol.Something]: "hello world"
}

数组

      数组也是一个特殊的对象,我们知道数组的属性是数字,有一个很有意思的点我觉得需要提一下,数组的length只与其中是数字的属性相关,也就是增加一个字符串的属性名,是不会影响length的,但是如果你试图向数组添加一个属性,但是属性名“看起来”像一个数字,那它会变成一个数值下标(因此会修改数组的内容而不是添加一个属性)

var myArray = [ "foo", 42, "bar" ];
myArray["3"] = "baz";
myArray.length; // 4
myArray[3]; // "baz"

小结

      这一章我们介绍了对象的基础知识,也知道了“js中并不是万物都是对象", 下一章我们将继续这一章节的内容,讲一些和对象有关的进阶知识
      小伙伴们今天的学习就到这里了,如果觉得本文对你有帮助的话,欢迎转发,评论,收藏,点赞!!!
      每天学习进步一点点,就是领先的开始。如果想继续提高,欢迎关注我,或者关注公众号”祯民讲前端“。大量前端技术文章,面试资料,技巧等助你更进一步!
在这里插入图片描述

Matlab结果性能评价---rms函数(计算矩阵、数组和向量元素均方根) 实例1:创建一个向量(正弦波)并计算其均方根值 实例2:创建一个二维矩阵并计算其均方根值 实例3:计算二维矩阵沿指定维度的均方根值 本例程配套完整源码下载 均方根(Root-Mean-Square Level): 向量x的均方根值为沿着指定的维度执行求和: 语法描述: y = rms(x)返回输入x的均方根值。如果x是行或列向量,y是实数值标量。对于大小尺寸大于1矩阵x,y包含沿x的第一个数组维度计算的均方根值。例如,如果x是N > 1的N*M矩阵,那么y是1*M行向量,对应x矩.. 阅读详情

相关推荐

Flutter 中使用蓝牙插件报错,说没有权限怎么解决

2、在build.grale里面更改一下版本号,我修改的是targetSdkVersion这个版本号,需要根据你自己的版本进行更改,记得更改之后先flutter clean一下再run。搞了一晚上,没搞出来,第二天用同事手机测试发现他手机可以,我手机还是不行,才发现是Android版本问题,需要修改两处地方。废话不多说,咱先看报错信息。

zzj17637822814的博客 2289

JavaScript的对象详解

对象是JavaScript中一个非常重要的概念,这是因为对象可以将多个相关联的数据封装到一起,更好的描述一个事物比如我们可以描述一辆车:Car,具有颜色(color)、速度(speed)、品牌(brand)、价格(price),行驶(travel)等等;又比如我们可以描述一个人:Person,具有姓名(name)、年龄(age)、身高(height),吃东西(eat)、跑步(run)等等;

zayyo的博客 1631

【OS】AUTOSAR架构下MCAL Modules软件分区问题分析

AUTOSAR架构下MCAL Modules软件分区问题分析

qq_36056498的博客 939

JS面向对象的应用场景

reference:http://www.cnblogs.com/chiangchou/p/js-oop3.html

tangcc的博客 2315

下采样新突破!ADown模块让YOLOv11多尺度特征提取更精准

ADown 凭借可编程梯度信息与多分支特征聚合的创新设计,打破了传统下采样在特征保留上的固有局限。本教程从原理到代码实现,再到工业场景适配,完整呈现了其在 YOLOv11 中的集成路径。只需简单新增模块脚本并修改配置文件,你的目标检测模型就能在多尺度特征捕捉能力上实现跨越式提升——无论是学术研究中的小目标检测突破,还是工业场景下的复杂多尺度任务落地,ADown 都能成为你攻克下采样瓶颈的利器。现在就动手尝试,让你的检测模型在下一代下采样技术的创新中再上一个台阶吧。

know_F0727的博客 524

Python爬虫实战:利用Selenium与Playwright抓取美团外卖数据

在当今大数据时代,网络数据采集已成为商业分析和市场研究的重要手段。本文以美团外卖平台为例,详细介绍如何使用Python最新爬虫技术(Selenium、Playwright)进行数据采集,并探讨相关技术原理、反爬应对策略及数据存储方案。通过5000+字的详细讲解和完整代码示例,帮助读者掌握现代网络爬虫开发的核心技能。本文详细介绍了使用Python最新爬虫技术采集美团外卖数据的完整流程,涵盖了从环境配置、页面分析到数据存储的全链路解决方案。

2201_76125261的博客 2550

深入javascript对象语法和应用场景(二)

文章目录前言正文复制对象不变性对象常量禁止扩展密封冻结存在性遍历小结 前言       上一章我们介绍了javascript对象的一些基本用法,这一章我们将继续上一章的内容,讲一些关于javascript进阶的内容 正文 复制对象       这个就是一个老生常谈的问题了,javascript对象的复制场景分为浅拷贝和深拷贝。浅拷贝只是拷贝一层,更深层次对象级别的只拷贝引用(地址),深拷贝

反手一个bug的博客 221

1 硬件工程师笔面试高频知识考点真题及解析——电阻

本文系统介绍了电阻的基础知识、选型要点及各类特殊电阻的应用。主要内容包括:1. 电阻选型需考虑阻值、封装、功率、精度、耐压等参数;2. 高频信号优先选用小封装电阻以减小寄生参数;3. 采样电阻需高精度、低温漂以保证测量准确性;4. 详细解析了上拉/下拉电阻、0欧电阻、磁珠等元件的特性与区别;5. 介绍了压敏电阻、热敏电阻等特殊电阻的工作原理及应用场景;6. 阐述了阻抗匹配的重要性及常见匹配方法。文章为电子工程师提供了全面的电阻选型与应用指南。

XU157303764的博客 2857

第三章 对象

3.对象 3.1 语法 对象定义方式: 1. 声明 var obj = { key: value; } 2. 构造形式 var obj = new Object(); obj.key = value; 3.2 类型 1. 基本类型 string number boolean null undefined obj...

angyinpai6933的博客 136

Error response from daemon: Get “https://index.docker.io/v1/search?q=nginx&n=25“:

在使用docker seach 命令搜索镜像的时候遇到这个错误,docker pull是可以正常下载镜像的,关于这个问题,本文提供解决方案,完全可行。

猿小白的博客 1万+

服务器搭建原神私服教程

项目的稳定版分支提供了编译好的服务端程序,但是博主觉得还是用dev版本的比较好。dev版本需要自己编译的,不要听到编译这两个字就头大,相反,这个服务端的编译相当简单。把文件中的两个IP地址127.0.0.1修改为你服务器的地址,修改完成后按 esc 输入 :wq。Mongodb作为服务端的数据库使用,我们这里安装最新版的Mongodb5。注意:如果想要使用最新版的服务端,必须安装>=17版本的java。tmux可以保证你关掉控制台的时候,程序依然继续运行。至此,服务端所需要的运行环境全部配置完成。

用最简单的方式说最重要的事!服务器、存储、云计 算、A智能的大数据产品、游戏开发技术。致力于广 大开发者、政企用户、各项机构等,构建云上世界提供全方位云计算解决方案。旨在打造差异化的开放式闭环生态系统帮助用户快速构建稳定、安全的云计算环境。 1万+

JS重点语法及常用对象总结

1.JS简介 2.JS三种引入方式 3.JS语法基础 4.JS函数 5常用内置对象 1.JS简介 2.JS三种引入方式 2.1外部引用法(推荐) 外部JavaScript,指的是把HTML代码和JavaScript代码单独放在不同文件中,然后在HTML文档中使用“script标签”来引入JavaScript代码 当一个script标签作为一个引入外部文件的标签那么就不能再在标签里边写js语句 2.2内部引用法 内部JavaScript,指的是把HTML代码和JavaScript代码放在同一.

记录博主学到的点滴 4022

淘宝滑块验证码破解:Python模拟鼠标轨迹过关详解

本文全面解析了淘宝滑块验证码的破解流程,从机制分析、图像处理、轨迹模拟到自动化实现,提供了完整的Python解决方案。随着2026年风控技术的升级,单纯依靠轨迹模拟已经难以达到高通过率,未来趋势是结合强化学习生成更自然的轨迹,并利用深度神经网络进行端到端的验证码绕过。此外,各大平台正逐步推广"无感验证"和"行为式验证码",将验证融入到用户正常操作中,这对爬虫技术提出了更高的挑战。技术本身是中立的,关键在于使用者的目的。希望本文能帮助开发者更好地理解验证码对抗技术,从而设计出更安全的防御系统。

2201_76125261的博客 96

JS基础语法(一)

文章目录JavaScript基础语法(一)一、基本概念1、 编程2、 计算机语言3、 编程语言4、 编程语言和标记语言的区别5、总结6、 计算机基础计算机组成硬件软件数据存储程序运行二、 初识JavaScript1、JS简介2、 JS初体验3、 JS注释4、 输入输出三、 变量1、变量的主要作用2、 变量的使用声明变量赋值变量初始化小案例3、 变量扩展更新变量声明多个变量特殊情况4、 命名规范5、 交换变量四、 数据类型1、 数据类型简介2、 变量的数据类型3、 简单数据类型数字型数字型进制数字范围特殊值字

一个专注于机器学习基础与实战的技术博客,内容涵盖算法推导、模型实现、数学原理与代码实践。用通俗的语言解析复杂概念,记录学习过程中的思考与总结,适合机器学习爱好者和从业者参考。 5433

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

JavaScript基础语法入门

介绍JavaScript的基础语法, 包含变量, 运算符, 数据类型, 数组, 函数,对象等内容, 主要是基于Java/C基础进行的扫盲学习.

trong_ 的烂笔头 3975

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

【JavaScript】JS语法入门到实战

Javascript语法的基本讲解。

大三小白C++进阶之路 2587

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

JavaScript基础语法 JavaScript 的对象和 Java 的对象的区别

JavaScript基础语法1.初始JavaScript1.1 简单介绍1.2 JS 能做的事情1.3 JS 、HTML 和 CSS 的关系1.4 JS运行过程2. JavaScript的组成3.基于JavaScript 实例3.1 用 JavaScript 输出文本3.2 用 JavaScript 改变HTML元素3.3 JavaScript 用法3.3.1 1.初始JavaScript 1.1 简单介绍 简称 JS 是世界上最流行的编程语言之一 是一个脚本语言,通过解释器运行 主要是在客户端(浏

weixin_45939887的博客 3387

【JavaScript】JS核心语法及函数

JavaScript 是一种基于对象和事件驱动的、并具有安全性能的脚本语言。

m0_66584716的博客 1401

【JavaScript】JS对象和JSON

var perStr='{"属性名":"属性值","属性名":"属性值","属性名":{},"属性名":["","",""],"属性名":[{},{},{}]}'3、创建数组并初始化:new Array("one","two",2) ,可简写: var 数组名=[元素,...]9、数组.splice(start,deleteCount,[添加的元素,...])---删除或删除添加原数组元素。1、数组1.concat(数组2)---返回数组1和数组2合并后的新数组。

想做职场小白吗? 我来教您....... 3168

js中对象取值的点语法和中括号语法的区别

js中对于对象取值时有两种方法, 一种是点语法, 一种是中括号语法. 但总有人不清楚什么时候用哪种. 网上其他博客有的说的不太全. 这次详细的说的介绍一下: 中括号语法: 任何时候 场合都可使用 适用范围很广; 点语法: 较有局限性, 一下说一下; ...

青蛙背蝎子过河的博客 3742

JS逆向学习之JS语法(一)

在黑盒渗透测试实践中,我们频繁遭遇各类请求加解密场景。这是由于为满足等保合规要求,大量行业系统(如金融、政务领域)开始对 HTTP 请求体进行加密处理,并引入动态签名、时间戳校验、随机 RequestId等防御机制。这些技术手段直接导致传统渗透方式(如暴力破解、数据包重放/篡改)失效——攻击者无法直接解析请求结构,更难以构造有效攻击载荷。典型困境示例无法爆破登录接口:密码字段被前端 RSA/AES 加密,原始字典直接发包将被服务端拒绝。

m0_67170526的博客 2645

JavaScript 入门指南(一)简介及基础语法

JavaScript 入门指南(一)简介及基础语法

墨鸦的博客 7674

JavaScript对象详解,js对象属性的添加

JavaScript对象详解,对象属性

weixin_44992737的博客 2万+

JavaScript——语法、基本对象

JavaScript 概念 功能 概念 JavaScript是一门客户端脚本语言. 运行在客户端浏览器中,每个浏览器都有JavaScript的解析引擎 脚本语言:不需要变编译,直接就可以被浏览器解析执行 功能 JavaScript可以增强用户和html页面的交互过程,可以来控制html元素,让界面有一些动态效果,增强用户体验. ...

Guizy 1901

JavaScript编程精粹:语法、函数与对象

JavaScript编程精粹:语法、函数与对象一 . JavaScript 介绍1.1 应用场景1.2 JavaScript 介绍1.3 JavaScript 组成部分二 . JavaScript 引入方式2.1 内部脚本2.2 外部脚本三 . JavaScript 基础语法3.1 输出语句3.2 变量3.3 数据类型3.3.1 number 类型3.3.2 string 类型3.3.3 undefined 类型3.3.4 引用类型3.4 运算符3.4.1 关系运算符3.4.2 逻辑运算符3.4.3 类型转

m0_53117341的博客 1091

JavaWeb——JavaScript(2/4)-JS函数、JS对象(Array,String,JSON)

JavaScript中Array对象用于定义数组。定义var变量名 =newArray(元素列表);//方式一var变量名 =元素列表;//方式二访问arr[ 索引 ] = 值;注意:JavaScript中的数组相当于Java中集合,数组的长度是可变的,而JavaScript是弱类型,所以可以存储任意的类型的数据。属性属性描述length设置或返回数组中元素的数量。方法方法描述forEach()遍历数组中的每个有值的元素,并调用一次传入的函数push()

li13437542099的博客 1452
上一篇: 深度解析javascript中的this(四)
下一篇: 深入javascript对象语法和应用场景(二)
祯民
博客等级 码龄9年 72粉丝 174原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值