zoukankan      html  css  js  c++  java
  • 3个js数组函数,变成数组本身的3个方法

    <!DOCTYPE html>
    <html lang="en">
    <head>
    	<meta charset="UTF-8">
    	<title>把自定义数组的三个函数,变成数组本身的方法</title>
    </head>
    <body>
    	<script>
    
    		//1.把稀疏数组变为不稀疏数组的函数--变成数组本身的方法
    		
    		/*
    		 * 稀疏数组 变为 不稀疏数组
    		 * @params array  arr 稀疏数组
    		 * @return array  resArr不稀疏的数组
    		*/
    		Array.prototype.noSparse=function(arr){
    			var resArr=[];//创建空数组
    			for (var i = 0; i < arr.length; i ++) {
    				if (arr[i] !== undefined) {
    				resArr.push(arr[i])//添加到数组中去
    				}
    			}
    				return resArr;
    		}
    
    		// 调用
    		var arr=[1,3,2,,,,4,,56,,,7];
    		console.log(arr);//原始数组
    		console.log(arr.noSparse(arr));//调用自定义的noSparse()方法,返回不稀疏数组
    		console.log("");
    
    
    
    
    		//2.判断元素是否在数组中的函数--变成数组本身的方法
    		
    		/*
    		 * 判断一个元素是否在该数组内
    		 * @param array  arr(数组)
    		 * @param fixed  val(元素值)
    		 * @param int  type (全等还是值等于)   1 全等于, 其他值就是 值等于
    		 * @return boolean(true/false)
    		 */		
    		Array.prototype.inArray=function(arr,val,type){
    			for (var i = 0; i < arr.length; i ++) {
    				if (type === 1) {
    					if (arr[i] === val) {
    					return true;
    				}
    			} 
    			else {
    					if (arr[i] == val) {
    					return true;
    				}
    			}
    		
    		}
    			return false;
    		}
    
    		// 调用
    		var arr=[1,2,5,4,7,8,9];
    		console.log(arr);//原始数组
    		console.log(arr.inArray(arr,'2',0));//调用自定义的inArray()方法,返回true/false
    		console.log(arr.inArray(arr,'2',1));
    		console.log("");
    
    
    
    		//3.数组去重的函数--变成数组本身的方法
    		
    		/*
    		  * 数组 去重
    		  * @params  array  arr原始数组
    		  * @return  array  resArr去重后的数组
    		*/
    		Array.prototype.noRepeat=function(arr){
    			var resArr = [];  //创建空数组
    
    			for (var i = 0; i < arr.length; i ++) {
    				if (!arr.inArray(resArr, arr[i], 1)) {
    					resArr.push(arr[i]);
    				}
    			}
    
    			return resArr;
    
    		}
    
    		// 调用
    		var arr=[1,2,5,4,1,1,4,4,4,6,7,8,6,6,6,6];
    		console.log(arr);//原始数组
    		console.log(arr.noRepeat(arr));////调用自定义的noRepeat()方法,返回 去重后的数组
    
    
    		//查看一下Array的原型(属性和方法)
    		console.log(Array.prototype);
    	</script>
    </body>
    </html>
  • 相关阅读:
    MySQL-事务相关知识
    Linux脚本-自动ping网址列表
    洛谷 P2453 [SDOI2006]最短距离
    洛谷 P2915 [USACO08NOV]Mixed Up Cows G
    洛谷 P2473 [SCOI2008] 奖励关
    洛谷 P3391 【模板】文艺平衡树
    洛谷 P4146 序列终结者
    洛谷 P1486 [NOI2004] 郁闷的出纳员
    洛谷 P2596 [ZJOI2006]书架
    性能测试工具Jmeter02-安装配置
  • 原文地址:https://www.cnblogs.com/1666818961-lxj/p/7404768.html
Copyright © 2011-2022 走看看