TS 对象,为对象动态添加属性
温馨提示:这篇文章已超过413天没有更新,请注意相关的内容是否还可用!
文章目录
- 1.定义
- 2.TypeScript 类型模板
- 3.为对象动态添加属性
- 3.1 解决方法
- 3.2 对象作为参数传递
- 3.3 方法返回对象
- 3.4 对象数组
1.定义
TypeScript 对象是包含一组键值对的实例。 值可以是标量、函数、数组、对象等,如下实例:
var object_name = { key1: "value1", // 标量 key2: "value", key3: function() { // 函数 }, key4:["content1", "content2"] //集合 } //访问对象 object_name.key1 // value1 object_name.key4 // ["content1", "content2"]2.TypeScript 类型模板
var sites = { site1: "", site2: 0, sayHello: function () { } // 类型模板 }; sites.site1 = "site1" sites.site2 = 2 sites.sayHello = function () { console.log("hello " + sites.site1 + sites.site2); }; sites.sayHello(); // hello site1 23.为对象动态添加属性
如果我们使用以上的方法定义对象是无法做到为对象动态添加属性
let people = { name: "hwm", age: 18, sayHello: ()=> {} } people.sex = "man"以上代码会报错:
3.1 解决方法
定义一个包含数组属性的接口,让对象实现该接口
interface obj { [idx: string]: any } let people: obj = {} people.name = "hwm" people.age = 18 console.log(people) // { name: 'hwm', age: 18 }3.2 对象作为参数传递
方法一:
private ParamObj(objT: {name: string, age: number}) { let people = objT console.log(objT) } let people = {name: "hwm", age: 18} this.ParamObj(people) // {name: "hwm", age: 18}方法二:
interface obj { [idx: string]: any } private ParamObj(objT: obj) { let people = objT console.log(objT) } let people:obj = {} people.name = "lll" people.age = 20 this.ParamObj(people) // {name: "lll", age: 20}3.3 方法返回对象
private ReturnObj(): {name: string, age: number}{ let people = {name: "hwm", age: 18} return people } let res = this.ReturnObj() console.log(res) // {name: "hwm", age: 18}3.4 对象数组
let tbl: {name: string, age: number}[] = []
免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

