js 关于笛卡尔乘积的运用

来源:互联网 发布:精品营销软件 编辑:程序博客网 时间:2024/05/16 10:13
<!DOCTYPE html><html lang="zh-CN"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>call</title></head><link rel="stylesheet" type="text/css" href="css/bootstrap-responsive.min.css"><link rel="stylesheet" type="text/css" href="css/bootstrap.min.css"><script src="js/jquery.js"></script><script>function Cartesian(a,b){var ret=[];console.log(a+" "+b);for(var i=0; i<a.length;i++){for(var j=0;j<b.length;j++){ret.push(array(a[i],b[j]));}}return ret;}function array(a,b){var ret=[];if(!(a instanceof Array)){ret=Array.call(null,a);}else{ret=Array.apply(null,a);}ret.push(b);return ret;}function multiCartesian(data){var len=data.length;console.log(len);if(len==0){return [];}else if(len==1){return data[0];}else{var ret=data[0];for(var i=1;i<len;i++){ret=Cartesian(ret,data[i]);}return ret;}}var data=[['a','b'],[1,2,3],["q","w"]];var arr=multiCartesian(data);console.log(arr);</script><body></body></html>

1 0