[小笔记]TypeScript/JavaScript映射两组数据


李俊才/CSDN博客

CSDN用户名:jcLee95

邮箱:291148484@163.com

【需求】在Python3中有一个函数是zip()函数,它接收两个序列(如列表\元组等)作为参数,将两者中的元素进行一一绑定形成成组,构成一个有两个元素按照一定结构组织的可迭代对象,(Python2就是数组),这个新的可迭代对象可以转换为字典(dict)。在这里,我们将TypeScript/JavaScript中的对象模仿Python中的字典,数组模仿Python中的列表实现zip()函数。

JavaScript

var zip = function (key_array, value_array) {var res = {};for (var i = 0; i < key_array.length; i++) {var k = key_array[i];var obj = {};obj[k] = value_array[i];res = Object.assign(res, obj);}return res;
};

TypeScript

export const zip = function(key_array: string | number[], value_array: any[]) {let res = {};for (let i = 0; i < key_array.length; i++) {let k = key_array[i];let obj = {};obj[k] = value_array[i];res = Object.assign(res, obj);}return res;
}

用例

let a = [1,3,4,2];
let b = ['a','b','c','d'];console.log(zip(a,b));

Out[]:

{ '1': 'a', '2': 'd', '3': 'b', '4': 'c' }

应用: 以一个数值数组的元素大小顺序对另一个数组排序
JavaScript

var bSortBya = function (a, b) {var obj = exports.zip(a, b);var c = a.sort();var res = [];for (var i = 0; i < a.length; i++) {res.push(obj[c[i]]);}return res;
};

TypeScript

export const bSortBya = function(a: number[],b: any[]){let obj = zip(a,b);let c=a.sort();let res=[];for(let i=0; i<a.length; i++){res.push(obj[c[i]]);}return res
}

用例

let a = [1,3,4,2];
let b = ['a','b','c','d'];console.log(bSortBya(a,b));

Out[]:

[ 'a', 'd', 'b', 'c' ]

[小笔记]TypeScript/JavaScript映射两组数据相关推荐

  1. [小笔记]TypeScript/JavaScript数组转置

    [小笔记]TypeScript/JavaScript数组转置 CSDN:jcLee95 邮箱:291148484@163.com 在代数中,矩阵一个是一个方形数组,它由若干个长度相等的子数组构成.所谓 ...

  2. [小笔记]TypeScript/JavaScript模拟Python中的Range函数

    [小笔记]TypeScript/JavaScript 模拟Python中的Range函数 李俊才/CSDN博客 CSDN用户名:jcLee95 邮箱:291148484@163.com 原创不易,感谢 ...

  3. excel 两组数据交点_初识Python 数据可视化

    ✨  冒号说:发着小光小热的小点点 ✨    "一图胜千言."          ----Arthur Brisbane 听说这个最近很火!在这个信息爆炸的时代,科技虽然使得数据获 ...

  4. excel 两组数据交点_30秒即可完成Excel数据对比,超高效率,快学起来不要犹豫!...

    在工作中,我们很经常需要比对两组甚至以上的Excel数据是否一致,如果数据少的话我们还能够慢慢看,数据要是对的话,用肉眼去看的话恐怕眼睛就可以不要了. 今天小编为大家带来五个能帮我们快速对比Excel ...

  5. datagrid出现相同两组数据_数据分析之统计学

    统计学知识 思维导图 第一节 统计学基本原理 数据分析相关概念 一.描述统计 测量尺度 1.定类(nominal) 功能:分类的作用,比如性别 2.定序(ordinal) 功能:分类.排序的作用,比如 ...

  6. 怎么评价两组数据是否接近_接近组数据(组间)

    怎么评价两组数据是否接近 接近组数据(组间) (Approaching group data (between-group)) A typical situation regarding solvin ...

  7. r怎么对两组数据统计检验_数据科学中最常用的统计检验是什么

    r怎么对两组数据统计检验 Business analytics and data science is a convergence of many fields of expertise. Profe ...

  8. 比较两组数据的差异用什么图更直观_用Excel制作旋风图

    旋风图是较为常用的数据对比图表,这种"背靠背"式的图表可以更直观地对比两组数据. 基本形态的制作 第一步 首先选取数据(数据我自己编的,以此为例)插入簇状条形图 之后你会得到这样一 ...

  9. python怎么分析数据差异的方法_如何比较两组数据之间的差异性

    展开全部 1, 首先,分别把这两组数据分别设为x和y,打开SPSS,点击左下角的Variable  View选项卡,e5a48de588b6323131333532363134313032313635 ...

最新文章

  1. NB-IoT与LoRa,两马领跑物联网竞赛,谁将最终胜出?
  2. 张首晟生前重磅演讲:要用第一性原理的思维方式来理解今天的世界
  3. winrar远程代码执行漏洞复现(cve-2018-20250)
  4. tensorflow学习笔记:tf.data.Dataset,from_tensor_slices(),shuffle(),batch()的用法
  5. Java集合和泛型练习及面试题——博客园:师妹开讲啦
  6. redis watch使用场景_redis不得不会的事务玩法
  7. MuiPlayer视频播放组件入门
  8. 开发人员生产力指南,细节决定成败!
  9. static、const、static const分析
  10. vrchat模型保存_VRChat简易教程3-往世界里导入模型和VRC接口初探
  11. SketchUp资源网站
  12. 基于zynq的千兆网udp项目_AC6102开发板千兆以太网UDP传输实验2
  13. ecshop 在确认收货时新增加商品评价并送消费积分功能
  14. RS485_Modbus通讯笔记
  15. web前端入门到实战:css中border-style 属性
  16. 虚拟机——KSM Kernel Samepage Merging
  17. 为你推荐一款高效的IO组件——okio
  18. php 评论插件,织梦评论插件,dedecms评论插件
  19. 【LeetCode】第599题——两个列表的最小索引总和(难度:简单)
  20. cmstop架构分析

热门文章

  1. PLM 问卷调查表-A 关于公司
  2. 关于信道利用率的总结与一道习题的最终解释
  3. [转]『TensorFlow』读书笔记_TFRecord学习
  4. C#图片动画效果(旋转360度)异步
  5. JavaScript-Load-Image
  6. 【转载】 C#中使用Sum方法对List集合进行求和操作
  7. Spark2.2(三十九):如何根据appName监控spark任务,当任务不存在则启动(任务存在当超过多久没有活动状态则kill,等待下次启动)...
  8. ThinkPHP---案例1登录登出和添加部门
  9. [Java反射基础四]通过反射了解集合泛型的本质
  10. static{}语句块详解