首页 > 其他分享 >ts:对象数组的简单使用

ts:对象数组的简单使用

时间:2024-10-26 19:18:36浏览次数:3  
标签:name People 对象 age people ts 数组 array

ts中对象数组的简单使用

一、主要内容说明

平常ts创建数组的格式如下:

let array:string[]=["元素1","元素2","元素3","元素3","元素4",---]

元素1、元素2、元素3,等这些元素,可以为字符,数字,也可以为对象。ts中大括号“{}”表示一个对象,在上面格式的基础上,把中括号“ [] ”里的各个元素替换为对象“ {} ”,即

let array:string[]=[{},{},{},{},{},---]

如此一个对象数组便可建立完成。对象“ {} ”里面可以添加很多东西,变量函数等。
上边我们创建的 array 类别为字符串类型“string”,上边各个元素替换成对象后,array也可更改类型,用以输入或输出函数。类型可以有系统里自带的number、string、date等这些类,也可以自己创建一个类别,如class可以创建自定义的类,当然本文我们不用。我们用interface创建接口类,接口命名为People。于是我们创建的对象类型选择便可更改为People一类,如 let array:People,若想改为数组形式,添加中括号便可,如 let array:People[]
最后我们可以对数组使用各种方法,如sort、map、filter等方法。
下边源码中数组命名为people,上边数组格式命名为array,文字和源码对照看需要注意

二、例子

1、源码1

// 定义一个接口 People,描述一个人包含的属性
interface People {
    name: string; // 姓名
    age: number;  // 年龄
}

// 创建一个 People 类型的数组,包含多个对象
let people: People[] = [
    { name: '小蜗牛764号', age: 30 },
    { name: '小蜗牛765号', age: 25 },
    { name: '小蜗牛766号', age: 35 }
];

// 按照年龄升序排序
people.sort((a, b) => a.age - b.age);
console.log(people); // 输出排序后的结果

// 按照姓名字母顺序排序
people.sort((a, b) => a.name.localeCompare(b.name));
console.log(people); // 输出排序后的结果

// 过滤出成年人(年龄大于18岁的人)
const adults = people.filter(person => person.age > 18);
console.log(adults); // 输出成年人列表

// 提取所有人的姓名
const names = people.map(person => person.name);

// 计算每个人的年龄乘以2
const names_age2_add = people.map(person => person.age * 2);

console.log(names); // 输出所有人的姓名
console.log(names_age2_add); // 输出每个人的年龄乘以2的结果

2、源码1运行效果

在这里插入图片描述

三、结语

本文主要说明ts对象数组的简单使用,理解也容易,先理解一般数组的样子,然后把数组中的普通元素变换为对象来理解便可。当然本文对于数组方法未过多讲解,博主会另起博文说明。编写本文主要用于知识回顾使用,后面一回顾可以短时间内捡回知识点。如此如此,这般这般。
说实话,ts相关的内容,想把逻辑性的东西用文字表达出来好难!博主原本想从let、var、const这些最简单的变量命名开始编写博文,但发现难以下手,现在更改为从某一部分内容入手,里面添加点其他东西,然后再拓展编写其他东西,如此便有编写的方向。本篇由此产生。
由于笔者的能力有限,创作的内容有所不足在所难免,也敬请读者包涵和指出,万分感谢!

四、定位日期

2024-10-26;
15:52;

标签:name,People,对象,age,people,ts,数组,array
From: https://blog.csdn.net/qq_44925904/article/details/143253925

相关文章

  • C++ (4) 面向对象编程,C++的魔法生物养成记
    面向对象编程:C++的魔法生物养成记在C++的世界里,面向对象编程(OOP)就像是魔法生物的养成游戏。你将扮演一名魔法师,通过编写代码来创造和培养自己的魔法生物。这些生物拥有自己的属性(数据)和能力(函数),它们可以在你的程序世界中自由行动和互动。现在,让我们拿起魔杖(键盘),开始这场魔......
  • 2024-10-26:最长公共后缀查询。用go语言,给定两个字符串数组 wordsContainer 和 wordsQu
    2024-10-26:最长公共后缀查询。用go语言,给定两个字符串数组wordsContainer和wordsQuery,要对每个wordsQuery[i]找到一个与其有最长公共后缀的字符串。如果有多个字符串与wordsQuery[i]有相同的最长公共后缀,则返回在wordsContainer中最早出现的那个。最后,返回一个整数数组a......
  • 面向对象程序设计
    第一次博客作业一、前言第一次作业第一次作业有五道题,前四道为入门及简单的小题,最后一题为难度较大的答题判断程序。主要考察对类的属性和方法的设计与使用,以及在规定格式下对程序用户的输入进行解析从而获取题目、答卷等信息。第二次作业第二次作业有四道题,前三道为难度入门......
  • [asm]: linux syscall number(32bits_64bits)
    [asm]:linuxsyscallnumber(32bits_64bits)    一、32bit_syscall_number(451个系统调用)1[root@rocky:tmp]#catlinux_syscall_no_32.txt2//date:2024-10-263//usingFor:4//--AssemblyLanguage(nasm,gas)5//--syscall......
  • Vue3中取当前日期并且取当前日期的前10天和后30天。并把每个日期的日放到一个数组里面
    consttoday=newDate();//获取当前日期constdateArray=[];constdayArray=[];//计算前10天for(leti=10;i>0;i--){constpastDate=newDate(today);pastDate.setDate(today.getDate()-i);dateArray.push(......
  • 算法之树状数组详解
    树状数组树状数组(BinaryIndexedTree,简称BIT),也被称为Fenwick树,是一种用于处理数组问题的高效数据结构。它特别适合解决涉及区间查询和更新的问题,尤其是当需要频繁地计算数组的前缀和时。树状数组的核心思想是利用二进制表示法(lowbit函数)来快速定位数组中的区间,并在O(lo......
  • 数据集&yolo关键点模型 -关键点系列- 手部关键点数据集 handpose keypoints >> DataBall
    数据集&yolo关键点模型-关键点系列-手部关键点数据集handposekeypoints>>DataBall该示例用3k+数据训练,模型采用yolo11n架构,对于一些简单场景可以满足左右手检测及21关键点检测,运算量小,模型效能高。后期会推出yolo11s,yolo11m架构模型或其它yolo系列。一、模型推......
  • 实验2 类和对象_基础编程1
    实验任务一源码1#pragmaonce23#include<string>45classT{6public:7T(intx=0,inty=0);8T(constT&t);9T(T&&t);//移动构造函数10~T();11voidadjust(intratio);//按系数成倍调整数据12voiddisplay()con......
  • 实验2 类和对象_基础编程1
    任务1:t.h#pragmaonce#include<string>//类T:声明classT{//对象属性、方法public:T(intx=0,inty=0);//普通构造函数T(constT&t);//复制构造函数T(T&&t);//移动构造函数~T();//析构函数voidadjus......
  • C语言数组与函数实践:构建基础版扫雷游戏
         使用C语言中的数组和函数来构建一个简单的扫雷游戏。通过这个项目,你可以练习如何在C语言中使用数组来存储和处理游戏数据,如何使用函数来组织代码并提高代码的可读性和可维护性。        在实现这个项目时,你可以按照以下步骤进行:1、定义游戏数组:使用二维数......