var findSubstring = function() {
    var rlt = [], path = [];
    allSort([1,2,3], rlt, path, 0, 3);
    //console.log(rlt);
};
var allSort = function(arr, rlt, path, k, l) {
    if (k == l) {
        rlt.push(path);
        return;
    }
    for (var i = 0; i < l ; i++) {
        path.push(arr[i]);
        allSort(arr, rlt, path, k+1, l);
        path.pop();
    }
}
findSubstring();
在allsort函数中单步输出的结果是正确的,但是在findSubstring输出函数的结果为27个长度为0的空数组,求诸位大神给解答一下,是什么原因造成的。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
数组是引用,所以每一个rlt push的都是同一个对象。用arr.slice解决