对象,数组的拷贝

var deepCopy = function(obj) {
  if (typeof obj !== 'object') return;
  var newObj = obj instanceof Array ? [] : {};
  for (var key in obj) {
    if (obj.hasOwnProperty(key)) {
      newObj[key] = typeof obj[key] === 'object' ? deepCopy(obj[key]) : obj[key];
    }
  }
  return newObj;
}

打乱数组,并列出每种打乱后的数组

这个方法特别笨,有没有更好的大家也提提意见!

function upsetArr (arr) {
  var obj= {};
  for (let i = 0; i < arr.length - 1; i++) {
        for (let j = i + 1; j < arr.length; j++) {
            var tempArr = deepCopy(arr);
            var temp = tempArr[j];
            tempArr[j] = tempArr[i];
            tempArr[i] = temp;
            obj[i+''+j] = tempArr;
        }    
    }
    return obj;
}
var arrObj = upsetArr([1,2,3])
console.log(arrObj)

打印出来的结果:                                                                                                                                                     

猜你喜欢

转载自www.cnblogs.com/Ingots/p/11204234.html