js中数组的用法示例
发表于:2025-02-02 作者:千家信息网编辑
千家信息网最后更新 2025年02月02日,这篇文章给大家分享的是有关js中数组的用法示例的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。数组1 reduce方法同时实现map和filter假设现在有一个数列,你希望更
千家信息网最后更新 2025年02月02日js中数组的用法示例
这篇文章给大家分享的是有关js中数组的用法示例的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
数组
1 reduce方法同时实现map和filter
假设现在有一个数列,你希望更新它的每一项(map的功能)然后筛选出一部分(filter的功能)。如果是先使用map
然后filter
的话,你需要遍历这个数组两次。
在下面的代码中,我们将数列中的值翻倍,然后挑选出那些大于50的数。
const numbers = [10, 20, 30, 40];const doubledOver50 = numbers.reduce((finalList, num) => { num = num * 2; if (num > 50) { finalList.push(num); } return finalList;}, []);doubledOver50; // [60, 80]
2 统计数组中相同项的个数
很多时候,你希望统计数组中重复出现项的个数然后用一个对象表示。那么你可以使用reduce
方法处理这个数组。
下面的代码将统计每一种车的数目然后把总数用一个对象表示。
var cars = ['BMW','Benz', 'Benz', 'Tesla', 'BMW', 'Toyota'];var carsObj = cars.reduce(function (obj, name) { obj[name] = obj[name] ? ++obj[name] : 1; return obj;}, {});carsObj; // => { BMW: 2, Benz: 2, Tesla: 1, Toyota: 1 }
3 使用解构来交换参数数值
有时候你会将函数返回的多个值放在一个数组里。我们可以使用数组解构来获取其中每一个值。
let param1 = 1;let param2 = 2;[param1, param2] = [param2, param1];console.log(param1) // 2console.log(param2) // 1
当然我们关于交换数值有不少其他办法:
var temp = a; a = b; b = temp b = [a, a = b][0] a = a + b; b = a - b; a = a - b
4 接收函数返回的多个结果
在下面的代码中,我们从/post
中获取一个帖子,然后在/comments
中获取相关评论。由于我们使用的是async/await
,函数把返回值放在一个数组中。而我们使用数组解构后就可以把返回值直接赋给相应的变量。
async function getFullPost(){ return await Promise.all([ fetch('/post'), fetch('/comments') ]);}const [post, comments] = getFullPost();
5 将数组平铺到指定深度
使用递归,为每个深度级别 depth
递减 1 。 使用 Array.reduce()
和 Array.concat()
来合并元素或数组。 基本情况下,depth
等于 1 停止递归。 省略第二个参数,depth
只能平铺到 1 (单层平铺) 的深度。
const flatten = (arr, depth = 1) => depth != 1 ? arr.reduce((a, v) => a.concat(Array.isArray(v) ? flatten(v, depth - 1) : v), []) : arr.reduce((a, v) => a.concat(v), []);flatten([1, [2], 3, 4]); // [1, 2, 3, 4]flatten([1, [2, [3, [4, 5], 6], 7], 8], 2); // [1, 2, 3, [4, 5], 6, 7, 8]
6 数组的对象解构
数组也可以对象解构,可以方便的获取数组的第n个值
const csvFileLine = '1997,John Doe,US,john@doe.com,New York';const { 2: country, 4: state } = csvFileLine.split(',');country // USstate // New Yourk
感谢各位的阅读!关于"js中数组的用法示例"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
数组
对象
代码
函数
深度
面的
统计
示例
个数
内容
功能
参数
多个
数值
数列
方法
更多
篇文章
选出
递归
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
金华app软件开发大概多少钱
网络安全等级条例题目
政府加强网络安全建设
我的世界重置服务器怎么开启
边界网络安全产品
网易哈利波特服务器
正规的浪潮服务器代理在哪里
参考消息数据库
服务器防护盾系统
阿里云服务器实名认证
什么软件开发思维
广东时代网络技术分类产品介绍
来自计算机网络技术英文
网络安全 范畴
大专的计算机网络技术专业
系统更新连接不到服务器怎么办
hive 查看元数据库
VR软件开发一般是干什么的
电脑登录不了服务器数据库
手机跳出来服务器异常
末末家互联网科技有限公司
嘉定区品牌网络技术服务哪家好
服务器开机风扇声音一会大一会小
由数据库
vb控件连接sql数据库
水电气管理系统数据库结构设计
鹤壁学软件开发
mssql数据库在线管理
宝德服务器业务好做么
阿里云服务器无法上网