JavaScript 二维数组排列组合2

<html>

	<head>
		<title>二维数组排列组合</title>
	</head>

	<body>
		<div id="showDiv"></div>
	</body>

	<script type="text/javascript">
		var arrays = [
			[
				‘1-1-雨尘‘, ‘1-2-芸芸‘, ‘1-3-简一‘, ‘1-4-乐乐‘
			]
			, [
				‘2-5-小明‘, ‘2-6-花花‘, ‘2-7-数数‘
			]
			, [
				‘3-8-静静‘, ‘3-9-点点‘, ‘3-10-hapday‘, ‘3-11-欢欢‘, ‘3-12-yuchen‘
			]
		];

		var array = getArrayByArrays(arrays);

		window.document.getElementById(‘showDiv‘).innerHTML = ‘共计 ‘ + array.length + ‘ 种组合。<br /><br />‘;

		for (var index = 0; index < array.length; index++) {
			var row = array[index];
			var rows = row.split(‘#‘);

			for (var cursor = 0; cursor < rows.length; cursor++) {
				var cell = rows[cursor];
				var cells = cell.split(‘-‘);

				for (var kk = 0; kk < cells.length; kk++) {
					window.document.getElementById(‘showDiv‘).innerHTML += cells[kk] + ‘    ‘;
				}

				window.document.getElementById(‘showDiv‘).innerHTML += ‘                                ‘;
			}

			window.document.getElementById(‘showDiv‘).innerHTML += ‘<br />‘;
		}

	  	/**
		 * 获取【二维数组】的【排列组合】
		*/
		function getArrayByArrays(arrays) {
			var arr = [ ‘‘ ];		// 初始化第一个内层数组

			/**
			 * 遍历外层数组
			*/
			for (var index = 0; index < arrays.length; index++) {
				arr = getValuesByArray(arr, arrays[index]);
			}

			return arr;
		}

		function getValuesByArray(arr1, arr2) {
			var arr = [];

			/**
			 * 遍历外层数组
			*/
			for (var index = 0; index < arr1.length; index++) {
				var value1 = arr1[index];

				/**
				 * 遍历内层数组
				*/
				for(var cursor = 0; cursor < arr2.length; cursor++) {
					var value2 = arr2[cursor];

					var target = ‘‘;
					if (null !== value1 && undefined !== value1 && ‘‘ !== value1) {
						target = value1 + ‘#‘ + value2;
					} else {
						target = value2;
					}

					arr.push(target);
					console.log(arr);
				};
			};

			return arr;
		};

	</script>

</html>

  

原文地址:https://www.cnblogs.com/hapday/p/10549865.html

时间: 2024-10-18 17:44:48

JavaScript 二维数组排列组合2的相关文章

javascript二维数组

注:1.此实例是验证二维数组两种赋值方式:1)先声明后赋值.2)声明的同时赋值. 2.将数组元素输出到表格中.(表格的一个关键属性:border-collapse:collapse:合并表格单元格边框.) <!doctype html><html><head><meta charset="utf-8"><title>无标题文档</title><script type="text/javascript

JavaScript二维数组矩形倒置(只针对矩形)

如图 想要对这个矩形排列的二维数组进行倒置 达到 9 8 2 0 9 4 2 0 6 1 -1 8 的效果, 思路:对矩形进行自上而下的遍历,即9 8 2 0 9 4 2 0 6 1 -1 8 遍历思路:arr.length=3;arr[0].leng=4; 以arr.length=3;为主for循环,进行遍历 代码 1.   var arr1=[[2,4,6,8],[8,9,0,-1],[9,0,2,1]];//数组  2.     for(var i=0;i<arr1.length;i++)

关于 JavaScript 二维数组和多维数组的定义声明

之前在写扫雷的时候,因为需要用到二维数组,出现了问题,所以记录一下. 当我们在需要使用多维数组的时候,一定要使用正确的声明,不然就会出行令人头大的问题: // 正确的声明 var arr = [] arr[0] = [] arr[1] = [] arr[2] = [] // 或者 arr[0] = [0, 0, 0] arr[1] = [0, 0, 0] arr[2] = [0, 0, 0] 演示一下错误的声明: // 错误的声明 var arr = [] var arr2 = [0, 0, 0

javascript二维数组的删除

做百度任务的时候学到一招 例子: var aqiData = [ ["北京", 90], ["上海", 50], ["福州", 10], ["广州", 50], ["成都", 90], ["西安", 100] ]; 想要删除上海这一项, var city="上海"; var newData = aqiData.filter(function(item) { retur

JavaScript 递归法排列组合二维数组2

<html> <head> <title>二维数组排列组合</title> </head> <body> <div id="showDiv"></div> </body> <script type="text/javascript"> var arrays = [ [ '1-1-雨尘', '1-2-芸芸', '1-3-简一', '1-4-乐乐' ]

JavaScript 递归法排列组合二维数组

<html> <head> <title>二维数组排列组合</title> </head> <body> <div id="showDiv"></div> </body> <script type="text/javascript"> var arrays = [ [ '1-1-雨尘', '1-2-芸芸', '1-3-简一', '1-4-乐乐' ]

javascript声明二维数组

//Javascript二维数组的声明 <!DOCTYPE html> <html> <head> <title></title> </head> <body> <script type="text/javascript">    var node=new Array();             //声明一维数组    for(var i=1; i<=9; i++){       n

C#/JS 获取二维数组组合

C#获取二维数组组合 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; namespace HF.SHOP.WebSite { public partial class Demo : System.Web.UI.Page { List

JavaScript - 一维数组、二维数组基础

<html> <head> <head> <body> <script language="javascript"> // 数组 var arr = ["wjp", 520, 'wcc', 13.14] ; for(var i=0; i<arr.length; i++){ alert(arr[i]); } // 数组为空undefined var arr2 = ["wjp",,51