首頁  >  文章  >  web前端  >  JS數組學習之反向連接全部元素並輸出字串

JS數組學習之反向連接全部元素並輸出字串

青灯夜游
青灯夜游原創
2021-08-31 15:09:052767瀏覽

在之前的文章《JS數組學習之怎麼拼接全部元素,回傳一個字串》、《JS數組學習之迭代數組計算元素總和、將值連接成字串》中,我們介紹了依照陣列順序,從左到右正向拼接全部元素,形成一個字串的幾種方法。這次我們繼續介紹JS數組轉字串,聊聊逆向(從右到左)拼接全部數組元素,形成一個反轉字符串的方法,有需要的朋友可以學習了解一下~

#今天本文的主要內容是:逆向遍歷數組,從右到左的將數組元素拼接成一個字串。下面介紹3種實作方法。

方法1:利用for迴圈

實作想法:

  • 利用for迴圈反向遍歷數組

    想要逆向遍歷數組,那麼初始條件就是i=數組長度-1,限制條件為i>=0,每循環一次i需要自減1(i--

for(i=arr.length-1;i>=0;i--){  //逆向循环遍历数组
}

#我們看看實作程式碼:

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數組學習之反向連接全部元素並輸出字串

##如果想要使用分隔符號來分隔每個陣列元素,可將回呼函數中兩個「 」運算子間的空字串變為指定分隔符號:

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數組學習之反向連接全部元素並輸出字串的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn