javascript通用小工具:查找二维数组中指定数组的索引 | 根据指定索引切割二维数组 | 二维数组中删除指定的数组

/**
 *  * 二维数组返回指定元素的索引
 * @param {Object} arr 要查找的一维数组
 * @param {Object} tdArray 二维数组
 */
function findIndexIn2DArray(arr,tdArray){
	var index;
	for(var i = 0 ;i<tdArray.length;i++){
		if(arr[0]==tdArray[i][0]&&arr[1]==tdArray[i][1]){
			index = i;
		}
	}
	return index?index:null;
}
/**
 * 二维数组根据指定索引切割数组
 * @param {Object} index 索引
 * @param {Object} isKeepIndex 是否保留索引值
 * @param {Object} isLeftArray 是否返回索引左边的数组
 * @param {Object} tdArray 二维数组
 */
function split2DArrayByIndex(index,isKeepIndex,isLeftArray,tdArray){
	var leftArray = [];
	var rightArray = [];
	if(isKeepIndex){
		rightArray.push([tdArray[index][0],tdArray[index][1]]);
	}
	for(var i = 0;i<tdArray.length;i++){
		if(i<index){
			leftArray.push([tdArray[i][0],tdArray[i][1]]);
		}else if(i>index){
			rightArray.push([tdArray[i][0],tdArray[i][1]]);
		}
	}
	if(isKeepIndex){
		leftArray.push([tdArray[index][0],tdArray[index][1]]);
	}
	
	return isLeftArray?leftArray:rightArray;
	
}

/**
 * 二维数组中删除指定数组
 * @param {Object} arr 要删除的数组
 * @param {Object} tdArray 二维数组
 */
function deleteArrayIn2DArray(arr,tdArray){
	var index;
	var newArray = [];
	for(var i = 0 ;i<tdArray.length;i++){
		if(arr[0]==tdArray[i][0]&&arr[1]==tdArray[i][1]){
			index = i;
		}
	}
	for(var i = 0 ;i<tdArray.length;i++){
		if(i!=index){
			newArray.push([tdArray[i][0],tdArray[i][1]]);
		}
	}
	return newArray;
}

posted on 2021-08-20 10:21  northwest  阅读(410)  评论(0编辑  收藏  举报

导航