5-41 WPS JS宏 数组迭代基础测试与双数组迭代的使用方法测试

数组迭代基础测试与双数组迭代的使用方法测试

一、 数组迭代基础测试

function 数组迭代基础测试()

{

var arr=[[98,99,100],[85,86,87],[99,100,98],[100,100,100]];

5-15 数组转换迭代-map测试

//对数组元素循环处理可以使用map方法,此方法将调用数组的每个元素传入给指定的函数,并返回一个新数组。

//使用方法:A1=数组.map((值,索引,数组)=>公式或方法)

var arr1=arr.map(v=>v[1]*10);

//监视窗口:arr1=[990,860,1000,1000];Array/object

var arr11=arr.map(v=>v[1]>15);

//监视窗口:arr11=[true,true,true,true];Array/object

5-18 数组的筛选迭代-filter

var arr=[[98,99,100],[85,86,87],[99,100,98],[100,100,100]];

//filter:

//统计符合条件的数组内容并组合成一个新数组

var arr2=arr.filter(v=>v[1]>90);

//监视窗口:arr2=[Array(3),Array(3),Array(3)];Array/object

var arr21=arr.filter(v=>v[0]===98);

//监视窗口:arr21=[Array(3)];Array/object

var arr22=arr.filter(v=>v[0]=98);//注意!注意!注意!这里替换了原数组值。

Console.log(`${arr22}`);

//打印结果:98,99,100,98,86,87,98,100,98,98,100,100

5-19 数组的查找迭代-find系列函数

var arr=[[98,99,100],[85,86,87],[99,100,98],[100,100,100]];

//find与findIndex:

//为迭代查找值,根据条件语句find从左查起,findIndex从右查起,返回遇见的第一个对应参数值

//使用方法:A1=数组.find((值、索引号、数组)=>公式或方法)

var arr3=arr.find(v=>v[1]>15);

//监视窗口:arr3=[98,99,100];Array/object

5-21 数组的归并迭代-reduce与reduceRight

var arr=[[98,99,100],[85,86,87],[99,100,98],[100,100,100]];

//reduce与reduceRight:

//归并函数是将元素中的多个值归并成一个值(如:数组所有值+-*/的结果),reduce表示从左向右操作,reduceRight表示从右向左操作。

var arr4=arr.reduce((x,y)=>x+y);

//监视窗口:arr4="98,99,10085,86,8799,100,98100,100,100";string

var arr41=arr.reduce((x,y)=>(x[0]>y[0])?x:y);

//监视窗口:arr41=[100,100,100];Array/object

5-20 数组的[与或]迭代-every与some

var arr=[[98,99,100],[85,86,87],[99,100,98],[100,100,100]];

every:

//为数组的所有元素值条件成立,返回true与false。

var arr5=arr.every(v=>v[1]>15);

//监视窗口:arr5=true;boolean

some:

//为数组中的元素值至少1个成立,返回true与false。

var arr6=arr.some(v=>v[1]>15);

//监视窗口:arr6=true;boolean

//Console.log(`${arr21}`);

}

二、双数组迭代的使用方法测试

1. 数组迭代map与find组合测试

function 数组迭代map与find组合测试()

{

//map:对数组元素等循环处理,将调用数组的每个元素传入给指定的函数,并返回一个新数组。

//find:为迭代查找值,根据条件语句,返回对应参数值

var arr1=[[98,99,100],[85,86,87],[99,100,98],[99,100,100]];

//监视窗口:arr1=[Array(3),Array(3),Array(3),Array(3)];Array/object

var arr=[85,88,99];

var NewArr=arr.map(d=>arr1.find(ar=>ar[0]==d));

//监视窗口:NewArr=[Array(3),undefined,Array(3)];Array/object

Console.log(JSON.stringify(NewArr));

//打印结果:[[85,86,87],null,[99,100,98]]

Console.log(JSON.stringify(NewArr[0]));

//打印结果:[85,86,87]//返回对应参数值

}

2. 数组迭代map与filter组合测试

function 数组迭代map与filter组合测试()

{

//map:对数组元素等循环处理,将调用数组的每个元素传入给指定的函数,并返回一个新数组。

//filter:统计符合条件的数组内容并组合成一个新数组

var arr1=[[98,99,100],[85,86,87],[99,100,98],[99,100,100]];

//监视窗口:arr1=[Array(3),Array(3),Array(3),Array(3)];Array/object

var arr=[85,88,99];

var NewArr=arr.map(d=>arr1.filter(ar=>ar[0]==d));

//监视窗口:NewArr=[Array(1),Array(0),Array(2)];Array/object

Console.log(JSON.stringify(NewArr));

//打印结果:[[[85,86,87]],[],[[99,100,98],[99,100,100]]]

Console.log(JSON.stringify(NewArr[0]));

//打印结果:[[85,86,87]]//符合条件的数组内容并组合成一个新数组

}

3. 数组迭代map与some组合测试

function 数组迭代map与some组合测试()

{

//map:对数组元素等循环处理,将调用数组的每个元素传入给指定的函数,并返回一个新数组。

//filter:统计符合条件的数组内容并组合成一个新数组

var arr1=[[98,99,100],[85,86,87],[99,100,98],[99,100,100]];

//监视窗口:arr1=[Array(3),Array(3),Array(3),Array(3)];Array/object

var arr=[85,88,99];

var NewArr=arr.map(d=>arr1.some(ar=>ar[0]==d));

//监视窗口:NewArr=[true,false,true];Array/object

Console.log(JSON.stringify(NewArr));

//打印结果:[true,false,true]

Console.log(JSON.stringify(NewArr[0]));

//打印结果:true//符合条件的数组内容并组合成一个新数组

}

复制代码
数组迭代基础测试与双数组迭代的使用方法测试

一、数组迭代基础测试

function 数组迭代基础测试()
{
var arr=[[98,99,100],[85,86,87],[99,100,98],[100,100,100]];

5-15 数组转换迭代-map测试
//对数组元素循环处理可以使用map方法,此方法将调用数组的每个元素传入给指定的函数,并返回一个新数组。
//使用方法:A1=数组.map((值,索引,数组)=>公式或方法)
var arr1=arr.map(v=>v[1]*10);
//监视窗口:arr1=[990,860,1000,1000];Array/object
var arr11=arr.map(v=>v[1]>15);
//监视窗口:arr11=[true,true,true,true];Array/object



5-18 数组的筛选迭代-filter
var arr=[[98,99,100],[85,86,87],[99,100,98],[100,100,100]];

//filter:
//统计符合条件的数组内容并组合成一个新数组
var arr2=arr.filter(v=>v[1]>90);
//监视窗口:arr2=[Array(3),Array(3),Array(3)];Array/object

var arr21=arr.filter(v=>v[0]===98);
//监视窗口:arr21=[Array(3)];Array/object

var arr22=arr.filter(v=>v[0]=98);//注意!注意!注意!这里替换了原数组值。
Console.log(`${arr22}`);
//打印结果:98,99,100,98,86,87,98,100,98,98,100,100



5-19 数组的查找迭代-find系列函数
var arr=[[98,99,100],[85,86,87],[99,100,98],[100,100,100]];

//find与findIndex:
//为迭代查找值,根据条件语句find从左查起,findIndex从右查起,返回遇见的第一个对应参数值
//使用方法:A1=数组.find((值、索引号、数组)=>公式或方法)
var arr3=arr.find(v=>v[1]>15);
//监视窗口:arr3=[98,99,100];Array/object

5-21 数组的归并迭代-reduce与reduceRight
var arr=[[98,99,100],[85,86,87],[99,100,98],[100,100,100]];

//reduce与reduceRight:
//归并函数是将元素中的多个值归并成一个值(如:数组所有值+-*/的结果),reduce表示从左向右操作,reduceRight表示从右向左操作。

var arr4=arr.reduce((x,y)=>x+y);
//监视窗口:arr4="98,99,10085,86,8799,100,98100,100,100";string

var arr41=arr.reduce((x,y)=>(x[0]>y[0])?x:y);
//监视窗口:arr41=[100,100,100];Array/object

5-20 数组的[与或]迭代-every与some
var arr=[[98,99,100],[85,86,87],[99,100,98],[100,100,100]];

every:
//为数组的所有元素值条件成立,返回true与false。
var arr5=arr.every(v=>v[1]>15);
//监视窗口:arr5=true;boolean

some:
//为数组中的元素值至少1个成立,返回true与false。
var arr6=arr.some(v=>v[1]>15);
//监视窗口:arr6=true;boolean
//Console.log(`${arr21}`);
}



2.双数组迭代的使用方法测试
1.数组迭代map与find组合测试
function 数组迭代map与find组合测试()
{
	//map:对数组元素等循环处理,将调用数组的每个元素传入给指定的函数,并返回一个新数组。
	//find:为迭代查找值,根据条件语句,返回对应参数值
	var arr1=[[98,99,100],[85,86,87],[99,100,98],[99,100,100]];
//监视窗口:arr1=[Array(3),Array(3),Array(3),Array(3)];Array/object

	var arr=[85,88,99];
	var NewArr=arr.map(d=>arr1.find(ar=>ar[0]==d));

//监视窗口:NewArr=[Array(3),undefined,Array(3)];Array/object
Console.log(JSON.stringify(NewArr));
//打印结果:[[85,86,87],null,[99,100,98]]

Console.log(JSON.stringify(NewArr[0]));
//打印结果:[85,86,87]//返回对应参数值
}

2.数组迭代map与filter组合测试
function 数组迭代map与filter组合测试()
{
	//map:对数组元素等循环处理,将调用数组的每个元素传入给指定的函数,并返回一个新数组。
	//filter:统计符合条件的数组内容并组合成一个新数组	
	var arr1=[[98,99,100],[85,86,87],[99,100,98],[99,100,100]];
//监视窗口:arr1=[Array(3),Array(3),Array(3),Array(3)];Array/object

	var arr=[85,88,99];
	var NewArr=arr.map(d=>arr1.filter(ar=>ar[0]==d));
//监视窗口:NewArr=[Array(1),Array(0),Array(2)];Array/object

Console.log(JSON.stringify(NewArr));
//打印结果:[[[85,86,87]],[],[[99,100,98],[99,100,100]]]

Console.log(JSON.stringify(NewArr[0]));
//打印结果:[[85,86,87]]//符合条件的数组内容并组合成一个新数组
}

3.数组迭代map与some组合测试
function 数组迭代map与some组合测试()
{
	//map:对数组元素等循环处理,将调用数组的每个元素传入给指定的函数,并返回一个新数组。
	//filter:统计符合条件的数组内容并组合成一个新数组	
	var arr1=[[98,99,100],[85,86,87],[99,100,98],[99,100,100]];
//监视窗口:arr1=[Array(3),Array(3),Array(3),Array(3)];Array/object

	var arr=[85,88,99];
	var NewArr=arr.map(d=>arr1.some(ar=>ar[0]==d));
//监视窗口:NewArr=[true,false,true];Array/object

Console.log(JSON.stringify(NewArr));
//打印结果:[true,false,true]

Console.log(JSON.stringify(NewArr[0]));
//打印结果:true//符合条件的数组内容并组合成一个新数组
}
相关推荐
Tisfy2 小时前
“豆包聊天搜索” —— 直接在Chrome等浏览器地址栏开启对话
前端·chrome·豆包
Data_agent2 小时前
京东商品价格历史信息API使用指南
java·大数据·前端·数据库·python
weixin_440730502 小时前
HTML中的css和js的书写样式
javascript·css·html
大学生资源网2 小时前
基于Vue的网上购物管理系统的设计与实现(java+vue+源码+文档)
java·前端·vue.js·spring boot·后端·源码
diudiu_332 小时前
XSS跨站脚本攻击
前端·xss
终极前端开发协会2 小时前
【web前端 - 齐枭飞】乾坤【qiankun】应用,主项目与子项目交互详细代码,里面有详细代码,可直接粘贴过去 直接应用 ,
前端·前端框架·交互
闲蛋小超人笑嘻嘻2 小时前
localStorage用法详解
前端
Swift社区2 小时前
用 RN 的渲染模型,反推 Vue 列表的正确拆分方式
前端·javascript·vue.js
Mr_chiu2 小时前
微前端从入门到精通:Vue开发者的大型应用架构演进指南
前端·架构