目录
js对象的九大特点
首页 web前端 前端问答 javascript对象有什么特点

javascript对象有什么特点

Dec 07, 2021 pm 03:58 PM
javascript 对象 特点

javascript对象的特点:1、“键值对”列表中的最后一个属性要以逗号结尾;2、使用const声明的对象,其数据是可以被修改的;3、属性名可以是“[值]”方式;4、“in”运算符左边必须是属性名,右边是对象名,返回的是布尔值。

javascript对象有什么特点

本教程操作环境:windows7系统、javascript1.8.5版、Dell G3电脑。

js对象的九大特点

第一:“键值对”列表中的最后一个属性要以逗号结尾

这个逗号有个高大上的名字:尾随逗号(trailing)

原因应该就是为了规范,简单来说就是为了美观。

第二:使用const声明的对象,其数据是可以被修改的

该对象内部的属性是可以被修改的。

对对象整体进行更改,是不行滴。

第三:多词属性名来捣乱

键值对中的键,也就是name:"zhangsan"中的name如果变成“new name”。

名字由一个单词变为多个单词,会使得有些事物发生改变。

  • 点不能使用了。原先是person.name,现在可不能写person.new name。
  • 应该写person["new name"]

遇到多词名称,记住三点:

  • 用括号

  • 名字加引号

  • 括号内可以直接写字符串,也可以写变量,因为变量中也可以写字符串

第四:属性名还有一种古怪的方式,方括号[]

 let name="apple"
 var o={
     [name]:5,
 }
 alert(o.apple);
登录后复制

记住,方括号中存放的不是确定的,死板的固定值,而是变量,变量懂吗?

灵活多变的那种。

第五:特殊情况下,属性值可以简写

function makeUser(name, age) {
  return {
    name: name,
    age: age,
    // ……其他的属性
  };
}

let user = makeUser("John", 30);
alert(user.name); // John
登录后复制

观察可以得到,属性名和变量名一样。

此时,可以换个写法:

变化之前:name:name

变化之后:name

有啥意义?就是图个方便,某种意义上来说还增加了初学者的负担,所以事物皆有两面性,无事无非。

第六:属性名称可以随便起

不用再担心关键字不能用了(为什么一定要用关键字?闲着蛋疼)

记住一点:__proto__ 的属性。我们不能将它设置为一个非对象的值

第七:“in”的作用

"key" in object
登录后复制
  • 属性名 在 对象中。

in左边必须是属性名,右边是对象名,返回的是布尔值true或者false。

属性名通常是字符串,但也有可能是变量,变量中存放的还是字符串。

所以还是字符串在起作用。

为什么要in?

因为怕undefined来捣乱。

第八:for...in循环

语法格式:

 for (key in object) {
   // 对此对象属性中的每个键执行的代码
 }
登录后复制

其中,除了in左边的key不确定之外(可以用其他单词来代替),其他几个单词的结构都是确定的。

侧面反映了,这个语句中重要的是“到底是要遍历哪一个对象”。

第九:对象属性的顺序

一个概念:整数属性名

属性名是整数字符串

另一个概念:整数字符串

可以被转化为整数的字符串

“1”,“2”等就是整数字符串。

记住:

  • 当属性名不是整数字符串,遍历对象输出数据时的顺序按照创建时的顺序
  • 当属性名是整数字符串,按照从小到大的顺序。

【相关推荐:javascript学习教程

以上是javascript对象有什么特点的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

自媒体到底是什么?它的主要特点和功能有哪些? 自媒体到底是什么?它的主要特点和功能有哪些? Mar 21, 2024 pm 08:21 PM

随着互联网的快速发展,自媒体这个概念已经深入人心。那么,自媒体到底是什么?它有哪些主要特点和功能呢?接下来,我们将一一探讨这些问题。一、自媒体到底是什么?自媒体,顾名思义,就是自己就是媒体。它是指通过互联网平台,个人或者团队可以自主创建、编辑、发布和传播内容的信息载体。不同于传统媒体,如报纸、电视、电台等,自媒体具有更强的互动性和个性化,让每个人都能成为信息的生产者和传播者。二、自媒体的主要特点和功能有哪些?1.低门槛:自媒体的崛起降低了进入媒体行业的门槛,不再需要繁琐的设备和专业的团队,一部手

如何将 MySQL 查询结果数组转换为对象? 如何将 MySQL 查询结果数组转换为对象? Apr 29, 2024 pm 01:09 PM

将MySQL查询结果数组转换为对象的方法如下:创建一个空对象数组。循环结果数组并为每一行创建一个新的对象。使用foreach循环将每一行的键值对赋给新对象的相应属性。将新对象添加到对象数组中。关闭数据库连接。

PHP版本NTS的含义及特点 PHP版本NTS的含义及特点 Mar 26, 2024 pm 12:39 PM

PHP是一种流行的开源脚本语言,被广泛用于Web开发中。而PHP版本中的NTS则是一个重要的概念,本文将介绍PHP版本NTS的含义及特点,并提供具体的代码示例。1.什么是PHP版本NTS?NTS是Zend官方提供的一个PHP版本的变体,全称为NotThreadSafe(非线程安全)。通常PHP版本分为TS(ThreadSafe,线程安全)和NTS两种

什么是Axelar币?Axelar币有什么特点? 什么是Axelar币?Axelar币有什么特点? Mar 06, 2024 am 10:20 AM

Axelar:跨链互操作性的未来Axelar是一个旨在解决不同区块链之间互操作性问题的跨链通信协议。通过Axelar,开发人员能够轻松构建跨链应用程序,实现资产和数据在多个区块链之间的无缝转移。Axelar的特点:通用跨链通信:Axelar提供了一个通用平台,允许不同区块链之间的双向通信。安全且可扩展:Axelar使用分布式验证器网络(DVN)来确保交易的安全性和可扩展性。跨链资产转移:Axelar使得在不同区块链之间转移资产成为可能,包括原生代币、稳定币和NFT。数据互操作性:Axelar允许

什么是LEO币?LEO币有什么特点? 什么是LEO币?LEO币有什么特点? Mar 06, 2024 am 09:31 AM

LEO币:币安交易所的原生代币LEO币是币安交易所发布的原生代币,于2019年推出。作为多功能的实用代币,LEO币为币安用户提供一系列福利和特权。LEO币的特点:交易费用折扣:持有LEO币可享受币安交易所交易费用的折扣,最高可达25%。VIP会员资格:根据持有的LEO币数量,用户可获得不同的VIP会员等级,享受更多专属福利。投票权:LEO币持有者有权对币安交易所的重大决策进行投票,参与平台治理。生态系统应用:LEO币可用于支付币安生态系统中的各种服务和产品,例如币安Launchpad、币安DEX

PHP 函数如何返回对象? PHP 函数如何返回对象? Apr 10, 2024 pm 03:18 PM

PHP函数可以通过使用return语句后跟对象实例来返回对象,从而将数据封装到自定义结构中。语法:functionget_object():object{}。这允许创建具有自定义属性和方法的对象,并以对象的形式处理数据。

数组和对象在 PHP 中的区别是什么? 数组和对象在 PHP 中的区别是什么? Apr 29, 2024 pm 02:39 PM

PHP中,数组是有序序列,以索引访问元素;对象是具有属性和方法的实体,通过new关键字创建。数组访问通过索引,对象访问通过属性/方法。数组值传递,对象引用传递。

什么是Manta币?Manta币有什么特点? 什么是Manta币?Manta币有什么特点? Mar 06, 2024 pm 10:50 PM

Manta币:隐私保护的去中心化金融利器Manta币(MANTA)是一种基于MantaNetwork的隐私保护代币,旨在为去中心化金融(DeFi)用户提供更加安全和私密的交易环境,增强用户交互体验。特点:隐私保护:Manta币利用零知识证明技术,允许用户在不透露交易详情的情况下验证交易。可扩展性:MantaNetwork采用分片技术,提高了交易吞吐量和可扩展性。跨链互操作性:Manta币支持跨多个区块链的交易,包括以太坊、波卡和Kusama。去中心化:MantaNetwork由分布式节点网络管理

See all articles