Skip to content

Latest commit

 

History

History
27 lines (23 loc) · 671 Bytes

File metadata and controls

27 lines (23 loc) · 671 Bytes

笛卡尔集

    var data = [['哇塞', '哇靠', '哇哇'], ['志帅', '志哥', '志锅'], ['好帅', '好牛']];
    var result = [];
    function dFunc(index, res) {
      if(index >= data.length) {
        result.push(res);
        console.log(result);
        return;
      }

      var dArr = data[index];
      for(var i=0, len=dArr.length; i<len; i++) {
        var theResult = res.slice(0, res.length);
        theResult.push(dArr[i]);
        dFunc(index+1, theResult);
      }
    }

    dFunc(0, []);

    for(var i=0,len=result.length; i<len; i++) {
      console.log(result[i][0] + '!!!' + result[i][1] + result[i][2] + '!!!!');
    }