JS全排列bug数组长度属性length和实际显示长度不相符

@JS全排列bug数组长度属性length和实际显示长度不相符

function permutation(arr) {
            let arr1 = [].concat(arr);
            let result = [];
            let final = [];

            function p(array) {

                if (array.length === 0) {
                    let a = [].concat(result);
                    console.log(a);
                    // final.push(a);
                    // final.push(result)
                    console.log(result);

                } else {
                    for (let i = 0; i < array.length; i++) {
                        let newArr = [].concat(array);
                        result = result.concat(newArr.splice(i, 1));

                        p(newArr);
                        result.pop();
                    }
                }
            }
            p(arr1);
            console.log(final);
        }

        permutation([2, 1, 3]);

JS全排列bug数组长度属性length和实际显示长度不相符_第1张图片
其中result的显示长度和和其中的length属性不相符,求大神帮忙解答

你可能感兴趣的:(javascript,html,数组)