数组迭代基础测试与双数组迭代的使用方法测试
一、 数组迭代基础测试
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//符合条件的数组内容并组合成一个新数组
}