JavaScript-遞歸紀要

遞歸使用過程中的兩個先決條件:
    1. 要遞歸的條件。
    2. 遞歸結束的條件。

 

/**
 * [thisArr 結構化一個匿名函數;]
 * @param  {[type]} arr [入參]
 * @return {[type]}     [description]
 */
var thisArr = function(arr) {
	var new_arr = [];
	for (var i = 0; i < arr.length; i++) {
	
		if (Array.isArray(arr[i])) {
			
			// 合併數組:arr.push.apply(arr,arrB);
			new_arr.push.apply(new_arr,thisArr(arr[i]));
		} else {
			new_arr.push(arr[i]);
		}
	}
	return new_arr;
};

var arr = [1,2,3,4,5,["a","b","c","d","e",["A","B","C","D","E",["FIRST","SECOND","THIRED","FOURED","FIRED"]]]];
thisArr(arr);

console.log(thisArr(arr));

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章