arguments.callee 是 所在函数的函数名
var arr = [1, 2, [3, 4, [5, 6, 7]]]; var resultArr = []; function forEachArr(arr) { for (var i = 0; i < arr.length; i++) { if (arr[i] instanceof Array) { arguments.callee(arr[i]); // forEachArr(arr[i]); } else { resultArr.push(arr[i]); } } return resultArr; } console.log(forEachArr(arr));