JS二维数组学习之反方向联接所有要素并输出字符串

lxf2023-03-09 16:45:01

在其他回答《JS数组学习之怎么拼接全部元素,返回一个字符串》、《JS数组学习之迭代数组计算元素总和、将值连接成字符串》中,大家阐述了依照二维数组次序,从左往右正方向拼凑所有原素,形成一个字符串数组的这些方法。此次我们再详细介绍JS数组转字符串,聊一聊反向(从左往右)拼凑所有数组元素,形成一个翻转字符串数组的办法,感兴趣的小伙伴可以学了解一下~

今日文中主要内容是:反向遍历数组,从左往右的把数组元素拼凑成一个字符串数组。下面为大家介绍3种建立方式

方式1:运用for循环

完成观念:

  • 运用for循环反向遍历数组

    需要反向遍历数组,那样状态变量便是 i=数组长度-1,约束条件为 i>=0,每循坏一次i必须自减1(i--

for(i=arr.length-1;i>=0;i--){  //反向循环系统遍历数组
}
  • 然后利用字符串连接操作符“ ”或是concat()方式来拼凑数组元素,变为字符串数组。【推荐文章:《JS字符串学习之巧用函数来连接多个字符串》】

我们来看一下完成编码:

var arr = [1,2,3,4,5,6,7,8,9,0];
var i,str="";
for(i=arr.length-1;i>=0;i--){  //反向循环系统遍历数组
//拼凑
str=str '' arr[i];
// str=str.concat(arr[i]);
}
console.log(str);

输出结果为:

JS二维数组学习之反方向联接所有要素并输出字符串

方式2:运用二维数组的reduceRight() 方式

recudeRight() 方式可以从右往左边对二维数组中所有原素启用指定调用函数。该调整函数的返回值为累计结论,而且此传参再下一次启用该调用函数时做为主要参数给予。

array.reduceRight(function callbackfn(previousValue, currentVaule, currentIndex, array)[, initialValue])

function callbackfn(previousValue,currentVaule,currentIndex,array):必不可少主要参数,特定调用函数,最多可以接受4个主要参数:

  • previousValue:初值,或者利用上一次启用调用函数得到数值。

  • currentVaule:现阶段原素二维数组数值。

  • currentIndex:现阶段数组元素数字检索。

  • array:包括该元素数组对象

我们来看一下运用reduceRight()如何反向拼凑数组元素

var arr = [1,2,3,4,5,6,7,8,9,0];
var str = '';

function f(pre,curr) {
str=pre '' curr;
return str;
}
arr.reduceRight(f);
console.log(str);

输出结果为:

JS二维数组学习之反方向联接所有要素并输出字符串

如果你想要应用分节符来划分每一个数组元素,可将调用函数中2个“ ”操作符之间空字符串变成特定分节符:

var arr = [1,2,3,4,5,6,7,8,9,0];
var str = '';
function f(pre,curr) {
str=pre '-' curr;
return str;
}
arr.reduceRight(f);
console.log(str);

输出结果为:

JS二维数组学习之反方向联接所有要素并输出字符串

方式3:运用reverse() reduce()

reverse()能够翻转二维数组元素次序;而reduce()方式的词汇和使用方法与和reduceRight() 方式大约同样,唯一不一样的是:这是从左往右对二维数组中所有原素启用指定调用函数。

array.reduce(function callbackfn(previousValue, currentVaule, currentIndex, array), initialValue)

完成观念:

  • 先使用reverse()翻转数组元素,获得新二维数组arr2;

  • 随后完成reduce()方式调用函数,拼凑数组元素

我们来看一下完成编码:

var arr1 = [1,2,3,4,5,6,7,8,9,0],arr2=[];
var str = '';
function f(pre,curr) {
str=pre '' curr;
return str;
}
arr2=arr1.reverse();
arr2.reduce(f);
console.log(str);

输出结果为:

JS二维数组学习之反方向联接所有要素并输出字符串

好啦,就说到这儿了,有需求的能看:javascript高级教程

以上就是关于JS二维数组学习之反方向联接所有要素并输出字符串的具体内容,大量欢迎关注AdminJS其他类似文章!