首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在Typescript中使用方括号表示法更新对象的嵌套属性

在Typescript中,可以使用方括号表示法来更新对象的嵌套属性。方括号表示法允许我们通过变量或表达式来访问对象的属性。

下面是一个示例代码,演示了如何使用方括号表示法更新对象的嵌套属性:

代码语言:txt
复制
interface MyObject {
  nested: {
    property: string;
  };
}

const obj: MyObject = {
  nested: {
    property: "old value",
  },
};

const propertyName = "nested";
const nestedPropertyName = "property";
const newValue = "new value";

obj[propertyName][nestedPropertyName] = newValue;

console.log(obj.nested.property); // 输出: "new value"

在上面的示例中,我们定义了一个接口MyObject,它包含一个嵌套属性nested,其中又包含一个属性property。我们创建了一个名为obj的对象,并将其初始值设置为{ nested: { property: "old value" } }

然后,我们使用方括号表示法来更新对象的嵌套属性。通过将变量propertyName设置为"nested",我们可以访问obj对象的nested属性。然后,通过将变量nestedPropertyName设置为"property",我们可以访问nested对象的property属性。最后,我们将newValue赋值给obj[propertyName][nestedPropertyName],从而更新了嵌套属性的值。

最后,我们使用console.log打印出obj.nested.property的值,可以看到它已经被成功更新为"new value"

推荐的腾讯云相关产品和产品介绍链接地址:

  • 腾讯云函数(云原生无服务器函数计算服务):https://cloud.tencent.com/product/scf
  • 腾讯云数据库(云原生数据库服务):https://cloud.tencent.com/product/cdb
  • 腾讯云对象存储(云原生对象存储服务):https://cloud.tencent.com/product/cos
  • 腾讯云区块链服务(云原生区块链服务):https://cloud.tencent.com/product/tbaas
  • 腾讯云人工智能(云原生人工智能服务):https://cloud.tencent.com/product/ai
  • 腾讯云物联网(云原生物联网服务):https://cloud.tencent.com/product/iot
  • 腾讯云移动开发(云原生移动开发服务):https://cloud.tencent.com/product/mob
  • 腾讯云音视频(云原生音视频服务):https://cloud.tencent.com/product/vod
  • 腾讯云网络安全(云原生网络安全服务):https://cloud.tencent.com/product/ddos
  • 腾讯云服务器(云原生服务器计算服务):https://cloud.tencent.com/product/cvm
  • 腾讯云存储(云原生存储服务):https://cloud.tencent.com/product/cos
  • 腾讯云云原生计算(云原生计算服务):https://cloud.tencent.com/product/tke
  • 腾讯云云原生网络(云原生网络服务):https://cloud.tencent.com/product/vpc
  • 腾讯云云原生安全(云原生安全服务):https://cloud.tencent.com/product/ssm
  • 腾讯云云原生数据库(云原生数据库服务):https://cloud.tencent.com/product/cdb
  • 腾讯云云原生区块链(云原生区块链服务):https://cloud.tencent.com/product/tbaas
  • 腾讯云云原生人工智能(云原生人工智能服务):https://cloud.tencent.com/product/ai
  • 腾讯云云原生物联网(云原生物联网服务):https://cloud.tencent.com/product/iot
  • 腾讯云云原生移动开发(云原生移动开发服务):https://cloud.tencent.com/product/mob
  • 腾讯云云原生音视频(云原生音视频服务):https://cloud.tencent.com/product/vod
  • 腾讯云云原生存储(云原生存储服务):https://cloud.tencent.com/product/cos
  • 腾讯云云原生区块链(云原生区块链服务):https://cloud.tencent.com/product/tbaas
  • 腾讯云云原生人工智能(云原生人工智能服务):https://cloud.tencent.com/product/ai
  • 腾讯云云原生物联网(云原生物联网服务):https://cloud.tencent.com/product/iot
  • 腾讯云云原生移动开发(云原生移动开发服务):https://cloud.tencent.com/product/mob
  • 腾讯云云原生音视频(云原生音视频服务):https://cloud.tencent.com/product/vod
  • 腾讯云云原生存储(云原生存储服务):https://cloud.tencent.com/product/cos
  • 腾讯云云原生区块链(云原生区块链服务):https://cloud.tencent.com/product/tbaas
  • 腾讯云云原生人工智能(云原生人工智能服务):https://cloud.tencent.com/product/ai
  • 腾讯云云原生物联网(云原生物联网服务):https://cloud.tencent.com/product/iot
  • 腾讯云云原生移动开发(云原生移动开发服务):https://cloud.tencent.com/product/mob
  • 腾讯云云原生音视频(云原生音视频服务):https://cloud.tencent.com/product/vod
  • 腾讯云云原生存储(云原生存储服务):https://cloud.tencent.com/product/cos
  • 腾讯云云原生区块链(云原生区块链服务):https://cloud.tencent.com/product/tbaas
  • 腾讯云云原生人工智能(云原生人工智能服务):https://cloud.tencent.com/product/ai
  • 腾讯云云原生物联网(云原生物联网服务):https://cloud.tencent.com/product/iot
  • 腾讯云云原生移动开发(云原生移动开发服务):https://cloud.tencent.com/product/mob
  • 腾讯云云原生音视频(云原生音视频服务):https://cloud.tencent.com/product/vod
  • 腾讯云云原生存储(云原生存储服务):https://cloud.tencent.com/product/cos
  • 腾讯云云原生区块链(云原生区块链服务):https://cloud.tencent.com/product/tbaas
  • 腾讯云云原生人工智能(云原生人工智能服务):https://cloud.tencent.com/product/ai
  • 腾讯云云原生物联网(云原生物联网服务):https://cloud.tencent.com/product/iot
  • 腾讯云云原生移动开发(云原生移动开发服务):https://cloud.tencent.com/product/mob
  • 腾讯云云原生音视频(云原生音视频服务):https://cloud.tencent.com/product/vod
  • 腾讯云云原生存储(云原生存储服务):https://cloud.tencent.com/product/cos
  • 腾讯云云原生区块链(云原生区块链服务):https://cloud.tencent.com/product/tbaas
  • 腾讯云云原生人工智能(云原生人工智能服务):https://cloud.tencent.com/product/ai
  • 腾讯云云原生物联网(云原生物联网服务):https://cloud.tencent.com/product/iot
  • 腾讯云云原生移动开发(云原生移动开发服务):https://cloud.tencent.com/product/mob
  • 腾讯云云原生音视频(云原生音视频服务):https://cloud.tencent.com/product/vod
  • 腾讯云云原生存储(云原生存储服务):https://cloud.tencent.com/product/cos
  • 腾讯云云原生区块链(云原生区块链服务):https://cloud.tencent.com/product/tbaas
  • 腾讯云云原生人工智能(云原生人工智能服务):https://cloud.tencent.com/product/ai
  • 腾讯云云原生物联网(云原生物联网服务):https://cloud.tencent.com/product/iot
  • 腾讯云云原生移动开发(云原生移动开发服务):https://cloud.tencent.com/product/mob
  • 腾讯云云原生音视频(云原生音视频服务):https://cloud.tencent.com/product/vod
  • 腾讯云云原生存储(云原生存储服务):https://cloud.tencent.com/product/cos
  • 腾讯云云原生区块链(云原生区块链服务):https://cloud.tencent.com/product/tbaas
  • 腾讯云云原生人工智能(云原生人工智能服务):https://cloud.tencent.com/product/ai
  • 腾讯云云原生物联网(云原生物联网服务):https://cloud.tencent.com/product/iot
  • 腾讯云云原生移动开发(云原生移动开发服务):https://cloud.tencent.com/product/mob
  • 腾讯云云原生音视频(云原生音视频服务):https://cloud.tencent.com/product/vod
  • 腾讯云云原生存储(云原生存储服务):https://cloud.tencent.com/product/cos
  • 腾讯云云原生区块链(云原生区块链服务):https://cloud.tencent.com/product/tbaas
  • 腾讯云云原生人工智能(云原生人工智能服务):https://cloud.tencent.com/product/ai
  • 腾讯云云原生物联网(云原生物联网服务):https://cloud.tencent.com/product/iot
  • 腾讯云云原生移动开发(云原生移动开发服务):https://cloud.tencent.com/product/mob
  • 腾讯云云原生音视频(云原生音视频服务):https://cloud.tencent.com/product/vod
  • 腾讯云云原生存储(云原生存储服务):https://cloud.tencent.com/product/cos
  • 腾讯云云原生区块链(云原生区块链服务):https://cloud.tencent.com/product/tbaas
  • 腾讯云云原生人工智能(云原生人工智能服务):https://cloud.tencent.com/product/ai
  • 腾讯云云原生物联网(云原生物联网服务):https://cloud.tencent.com/product/iot
  • 腾讯云云原生移动开发(云原生移动开发服务):https://cloud.tencent.com/product/mob
  • 腾讯云云原生音视频(云原生音视频服务):https://cloud.tencent.com/product/vod
  • 腾讯云云原生存储(云原生存储服务):https://cloud.tencent.com/product/cos
  • 腾讯云云原生区块链(云原生区块链服务):https://cloud.tencent.com/product/tbaas
  • 腾讯云云原生人工智能(云原生人工智能服务):https://cloud.tencent.com/product/ai
  • 腾讯云云原生物联网(云原生物联网服务):https://cloud.tencent.com/product/iot
  • 腾讯云云原生移动开发(云原生移动开发服务):https://cloud.tencent.com/product/mob
  • 腾讯云云原生音视频(云原生音视频服务):https://cloud.tencent.com/product/vod
  • 腾讯云云原生存储(云原生存储服务):https://cloud.tencent.com/product/cos
  • 腾讯云云原生区块链(云原生区块链服务):https://cloud.tencent.com/product/tbaas
  • 腾讯云云原生人工智能(云原生人工智能服务):https://cloud.tencent.com/product/ai
  • 腾讯云云原生物联网(云原生物联网服务):https://cloud.tencent.com/product/iot
  • 腾讯云云原生移动开发(云原生移动开发服务):https://cloud.tencent.com/product/mob
  • 腾讯云云原生音视频(云原生音视频服务):https://cloud.tencent.com/product/vod
  • 腾讯云云原生存储(云原生存储服务):https://cloud.tencent.com/product/cos
  • 腾讯云云原生区块链(云原生区块链服务):https://cloud.tencent.com/product/tbaas
  • 腾讯云云原生人工智能(云原生人工智能服务):https://cloud.tencent.com/product/ai
  • 腾讯云云原生物联网(云原生物联网服务):https://cloud.tencent.com/product/iot
  • 腾讯云云原生移动开发(云原生移动开发服务):https://cloud.tencent.com/product/mob
  • 腾讯云云原生音视频(云原生音视频服务):https://cloud.tencent.com/product/vod
  • 腾讯云云原生存储(云原生存储服务):https://cloud.tencent.com/product/cos
  • 腾讯云云原生区块链(云原生区块链服务):https://cloud.tencent.com/product/tbaas
  • 腾讯云云原生人工智能(云原生人工智能服务):https://cloud.tencent.com/product/ai
  • 腾讯云云原生物联网(云原生物联网服务):https://cloud.tencent.com/product/iot
  • 腾讯云云原生移动开发(云原生移动开发服务):https://cloud.tencent.com/product/mob
  • 腾讯云云原生音视频(云原生音视频服务):https://cloud.tencent.com/product/vod
  • 腾讯云云原生存储(云原生存储服务):https://cloud.tencent.com/product/cos
  • 腾讯云云原生区块链(云原生区块链服务):https://cloud.tencent.com/product/tbaas
  • 腾讯云云原生人工智能(云原生人工智能服务):https://cloud.tencent.com/product/ai
  • 腾讯云云原生物联网(云原生物联网服务):https://cloud.tencent.com/product/iot
  • 腾讯云云原生移动开发(云原生移动开发服务):https://cloud.tencent.com/product/mob
  • 腾讯云云原生音视频(云原生音视频服务):https://cloud.tencent.com/product/vod
  • 腾讯云云原生存储(云原生存储服务):https://cloud.tencent.com/product/cos
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

深度讲解TS:这样学TS,迟早进大厂【09】:数组类型

TS系列地址: 21篇文章带你玩转ts # 数组类型 TypeScript ,数组类型有多种定义方式,比较灵活。...「类型 + 方括号表示§ 最简单方法是使用「类型 + 方括号」来表示数组: let fibonacci: number[] = [1, 1, 2, 3, 5]; 数组不允许出现其他类型:...数组泛型§ 我们也可以使用数组泛型(Array Generic) Array 来表示数组: let fibonacci: Array = [1, 1, 2, 3, 5]; 关于泛型,可以参考泛型一章...,值类型必须是数字之外,也约束了它还有 length 和 callee 两个属性。...= arguments; } 其中 IArguments 是 TypeScript 定义好了类型,它实际上就是: interface IArguments { [index: number

53930

如何理解TypeScript 对象

TypeScript 对象是一种用于存储和操作数据实体。对象可以包含属性和方法,用来描述和定义特定类型数据结构及其行为。...创建对象对象字面量 TypeScript ,最简单创建对象方式是使用对象字面量(Object Literal)。...然后,通过使用 new 关键字和构造函数来创建 person 对象。访问对象属性和方法点符号访问 TypeScript ,我们可以使用点符号 . 来访问对象属性和方法。...方括号访问可以在运行时动态地选择属性或方法名称。对象属性可选属性 TypeScript ,我们可以通过属性名后面加上 ? 符号来定义可选属性。可选属性表示属性是可选,可以存在也可以不存在。...只读属性表示属性赋值后不能再修改。

21610
  • TypeScript 初学者入门学习笔记(一)

    TypeScript 类型系统,很大程度上弥补了 JavaScript 缺点。 为什么使用 TypeScript?...var octalLiteral = 484; // ES6 八进制表示 var notANumber = NaN; var infinityNumber = Infinity; ES6 中二进制和八进制数值表示...line4:data 被推断为 number,访问length 属性报错。 对象类型——接口 TS使用接口(Interfaces)来定义对象类型。...对象一些字段只能在创建时被赋值,可以使用 **readonly **定义只读属性: 例一:使用 readonly 定义属性 id 初始化后,又被重新赋值,所以会报错。...类型 + 方括号 表示 最简单方法是使用类型 + 方括号表示数组: let arr: number[] = [1, 1, 2]; // 数组元素不允许出现其他类型 let arr1:

    1.8K20

    Visual Studio Code1.67版本已正式发布,新增Rust指南

    Visual Studio Code1.67版本已正式发布,该版本包含大量增强生产力更新项: 资源管理器文件嵌套 通过这次更新,用于浏览和管理文件和文件夹Visual Studio Code资源管理器工具现在支持基于名称嵌套相关文件...编辑 括号对着色默认启用 鉴于1.60版本引入方括号对着色特性积极反馈,我们默认启用方括号对着色。...语法不能将某些方括号标记为不平衡,比如shell脚本case语句中右括号: 为了使方括号对匹配和着色更加健壮,TextMate语法贡献现在可以表示某些标记方括号不应匹配。...json,提供语法可以使用属性balancedBracketScopes(默认为["*"])和unbalancedBracketScopes(默认为[])来包括或排除括号匹配作用域。...case语句中)不应该匹配: 新括号匹配算法 方括号匹配现在使用方括号着色相同数据结构。

    34830

    一篇文章带你了解JavaScript json 对象

    使用括号表示访问属性值: var myObj, x; myObj = { "name": "John", "age": 30, "car": null }; x = myObj["...修改值 你可以使用表示修改JSON对象任何值: myObj.cars.car2 = "Mercedes"; js完整代码: var myObj, i, x = "";...删除对象属性 使用delete关键字从JSON对象删除一个属性: delete myObj.cars.car2; 完整代码: <!...五、总结 本文基于JavaScript基础,介绍了json 对象,语法使用,如何去访问对值,如何去循环对象。如何去嵌套JSON 对象。...对象如何去嵌套数组,常见修改,删除数组,都做了详细讲解。 通过丰富案例分析,效果图展示,能够帮助你更好理解。 代码很简单,希望能够帮助你。

    59220

    JS对象那些事儿

    注意:上面的学生对象键可以通过点表示访问,即student.id,student.name或通过方括号表示,即学生['id'],学生['姓名']等 2. Object.create()。...注意:创建对象最佳方法是通过字面量表示,因为它在源代码占用空间更少。...此外,字面量表示创建对象,并在同一行代码中分配属性,而其他代码则不然。 如何添加/更新和删除对象属性 如前所述,可以通过点 或 括号表示添加对象属性。让我们看一个例子。 ?...要更新属性,我们可以再次使用上述两种表示。如果我们为已创建属性添加值,则会更新这个属性值。...此外,浅拷贝将复制顶级属性,但嵌套对象原始(源)和副本(目标)之间共享。 浅拷贝另一种方法是使用Object.assign()。我们来看看这个例子 ?

    2.4K10

    TypeScript 演化史 — 第七章】映射类型和更好字面量类型推断

    转换后属性组成新类型。 使用映射类型,可以捕获类型系统类似 Object.freeze() 等方法效果。冻结对象后,就不能再添加、更改或删除其中属性。...对于希望应用程序冻结每种类型对象,咱们就必须定义一个包装器函数,该函数接受该类型对象并返回冻结类型对象。没有映射类型,咱们就不能以通用方式静态地使用 Object.freeze()。...方括号使用了 keyof 操作符。keyof T 将 T 类型所有属性表示为字符串字面量类型联合。 方括号 in 关键字表示我们正在处理映射类型。...咱们可以更新任意多个属性,这使得setState方法成为 Partial 一个很好用例。 Lodash:pick 函数从一个对象中选择一组属性。... TypeScript 2.0 ,类型系统扩展了几个新字面量类型: boolean 字面量类型 数字字面量 枚举字面量 不带类型注解 const 变量或 readonly 属性类型推断为字面量初始化类型

    3.8K40

    深入学习下 TypeScript 泛型

    TypeScript 提供了多种方法来表示代码对象,其中一种是使用接口。...然后,您将通过创建一个条件类型来探索高级用例,该条件类型省略基于点表示对象类型嵌套字段。 条件类型基本结构 条件类型是根据某些条件具有不同结果类型泛型类型。...此实用程序类型将能够省略对象字段,就像现有的 Omit 实用程序类型一样,但也允许使用表示省略嵌套字段。...此时,KeyPart1 不是点表示:它将包含一个字段的确切名称,该字段包含您希望从原始类型中省略嵌套字段。因此,您可以安全地使用现有的实用程序类型。...然后将此属性类型设置为递归调用 NestedOmit 实用程序类型结果,但现在使用 T[NewKeys] 将此属性类型作为第一个类型参数传递给 T,并作为第二个类型参数传递其余键以点表示表示

    39K30

    说说我对 TypeScript 索引签名 理解

    答案是使用一个索引签名! 接着,我们来看看什么是 TypeScript 索引签名以及何时需要它们。 1.什么是索引签名 索引签名思想是只知道键和值类型情况下对结构未知对象进行类型划分。...索引签名语法 索引签名语法相当简单,看起来与属性语法相似,但有一点不同。我们只需方括号内写上键类型,而不是属性名称:{ [key: KeyType]: ValueType }。...索引签名注意事项 TypeScript索引签名有一些注意事项,需要注意。...当在属性访问器作为键使用时,JavaScript隐式地将数字强制为字符串(names[1]与names['1']相同)。TypeScript也会执行这个强制。...如果你试图索引签名中使用,例如,字符串字面类型联合作为键,这是一个错误。 索引签名键方面是通用

    1.7K20

    深入学习下 TypeScript 泛型

    TypeScript 提供了多种方法来表示代码对象,其中一种是使用接口。...首先,您将了解条件类型基本结构。然后,您将通过创建一个条件类型来探索高级用例,该条件类型省略基于点表示对象类型嵌套字段。条件类型基本结构条件类型是根据某些条件具有不同结果类型泛型类型。...此实用程序类型将能够省略对象字段,就像现有的 Omit 实用程序类型一样,但也允许使用表示省略嵌套字段。...此时,KeyPart1 不是点表示:它将包含一个字段的确切名称,该字段包含您希望从原始类型中省略嵌套字段。因此,您可以安全地使用现有的实用程序类型。...然后将此属性类型设置为递归调用 NestedOmit 实用程序类型结果,但现在使用 T[NewKeys] 将此属性类型作为第一个类型参数传递给 T,并作为第二个类型参数传递其余键以点表示表示

    15310

    TypeScript 演化史 -- 7】映射类型和更好字面量类型推断

    对于希望应用程序冻结每种类型对象,咱们就必须定义一个包装器函数,该函数接受该类型对象并返回冻结类型对象。没有映射类型,咱们就不能以通用方式静态地使用 Object.freeze()。...方括号使用了 keyof 操作符。keyof T 将 T 类型所有属性表示为字符串字面量类型联合。 方括号 in 关键字表示我们正在处理映射类型。...咱们可以更新任意多个属性,这使得setState方法成为 Partial 一个很好用例。 Lodash:pick 函数从一个对象中选择一组属性。...该方法返回一个新对象,该对象只包含咱们选择属性。可以使用 Pick 对该行为进行构建,正如其名称所示。... TypeScript 2.0 ,类型系统扩展了几个新字面量类型: boolean 字面量类型 数字字面量 枚举字面量 不带类型注解 const 变量或 readonly 属性类型推断为字面量初始化类型

    2.8K10

    JavaScript引用类型之Object类型

    JavaScript中大多数引用类型都是Object实例,Object类型也是使用最多类型!..."张三"; person.age=22; (2)第二种方式使用对象字面量表示。...下面是一个关于访问对象属性重要知识点: 一般来说,访问对象属性使用都是点表示,这也是很多面向对象那个语言中通用语法。不过,JavaScript也可以使用方括号来访问对象属性!...通过方括号访问对象属性方式完美的解决了点表示不能通过一个变量访问属性缺点:代码如下: var param="name"; var value=person[param]; alert(value)...; 还有就是,当属性名中出现空格像"first name",这个时候是无法用点表示来访问,只能通过方括号来访问!

    86650

    TypeScript 演化史 — 第九章】object 类型 和 字符串索引签名类型属性

    object 类型类型声明 随着 TypeScript 2.2 发布,标准库类型声明已经更新,以使用 object 类型。...TypeScript附带lib.es6.d.ts文件,Object类型定义如下: interface Object { // ... /** Returns a string representation...Object]" obj.toString(); 字符串索引签名类型属性 TypeScript 2.2 之前,如果想访问带有字符串索引签名类型任意属性,就必须使用[]符号,但不允许使用.符号访问...类型使用使用.符号访问未知属性仍然是一个错误,因此,对于以下代码,TypeScript 2.2 仍然会给出一个编译时错误: const portNumbers = {}; // OK portNumbers... JS 访问属性时,大多数时候将使用表示,但也可以使用括号表示作为转义。 有了这个较松限制,对于常用JS 开发的人员来说更容易使用

    1.5K30

    JavaWeb——JSON语法讲解与Jackson解析器完成JSON数据与Java对象转换(应用Ajax与JSON实现校验用户名是否功能)

    1 JSON基本概述 JSON,全名为JavaScript Object Notation,JavaScript对象表示。...(18); 那么,JavaScript也想干同样事情,用JSON数据格式来表示对象就被称为JavaScript对象表示,比如: var p = {"name":"妲己", "age":18};...JSON语法 2.1 基本规则 数据名称/值对:数据由键值对构成,键:用引号引起来,单双均可,也可以不使用引号;值取值类型如下: 类型描述数字整数或浮点数字符串双引号逻辑值true或...false数组方括号[],如{"persons":[{},{}]}对象花括号{},如{"address":{"province":"北京",....}}null空 数据由逗号分隔:多个键值对由逗号分隔...【注解】:在对象对应属性位置使用 1)@JsonIgnore:排除属性,排除后对应属性键值对不会被转换为字符串; 2)@JsonFormat:属性格式化; 练习案例:如上Person类中加一个

    3K40

    从零开始学 Web 之 JavaScript(五)面向对象

    1.3、使用对象字面量表示 对象字面量是对象定义一种简写形式,目的在于简化创建包含大量属性对象过程。...("我很能吃"); } // 最后一个后面没有逗号 }; obj.eat(); 2、访问对象属性表示方括号表示 alert(person["name"]); //"Nicholas..." 如果属性包含会导致语法错误字符,或者属性使用是关键字或保留字,也可以使用方括号表示。...然而,属性是可以包含非字母非数字,这时候就可以使用方括号表示来访问它们。通常,除非必须使用变量来访问属性,否则我们建议使用表示。...因为 js 是一门动态类型语言,不管使用表示还是方括号表示,如果没有这个属性,就相当于创建这个属性,然而这个时候没有赋值,所以就是 undefined。

    46020

    TypeScript 演化史 -- 9】object 类型 和 字符串索引签名类型属性

    object 类型类型声明 随着 TypeScript 2.2 发布,标准库类型声明已经更新,以使用 object 类型。...TypeScript附带lib.es6.d.ts文件,Object类型定义如下: interface Object { // ... /** Returns a string representation...Object]" obj.toString(); 字符串索引签名类型属性 TypeScript 2.2 之前,如果想访问带有字符串索引签名类型任意属性,就必须使用[]符号,但不允许使用.符号访问...类型使用使用.符号访问未知属性仍然是一个错误,因此,对于以下代码,TypeScript 2.2 仍然会给出一个编译时错误: const portNumbers = {}; // OK portNumbers... JS 访问属性时,大多数时候将使用表示,但也可以使用括号表示作为转义。 有了这个较松限制,对于常用JS 开发的人员来说更容易使用

    1.3K10
    领券