数组方法,需要可以摘抄,反正没人看,我就是存个档,到时候好找。嘿嘿嘿

<!DOCTYPE html><html><head><meta charset="utf-8"><title></title></head><body></body>
	<script type="text/javascript">
// join,就是把数组转换成字符串,然后给他规定个连接字符,默认的是逗号(  ,)
			// 书写格式:join(" "),括号里面写字符串  ("要加引号"),
		var arr1 = [1,2,3,4,5,6]
		console.log(arr1.join())
		console.log(arr1.join("&"))
// push():  把里面的内容添加到数组末尾,并返回修改后的长度。
		var arr2 = [1,2,3,4,5,6]
		arr2.push(7)
		console.log(arr2)
// pop():移除数组最后一项,返回移除的那个值,减少数组的length。
		arr2.pop()
		console.log(arr2)
// unshift:将参数添加到原数组开头,并返回数组的长度 。
		var arr3 = [1,2,3,4,5,6]
		arr3.unshift(0)
		console.log(arr3)
// shift():删除原数组第一项,并返回删除元素的值;如果数组为空则返回undefined 。 
		var arr = null
		arr = arr3.shift()
		console.log(arr3)  
		console.log(arr)  //返回删除元素的值
// sort():将数组里的项从小到大排序		
		var arr4 = [32,41,20,5,19,6]
		//sort()方法比较的是字符串,没有按照数值的大小对数字进行排序,要实现这一点,就必须使用一个排序函数
		function sortNumber(a,b)
		{
		  return a - b
		}
		console.log(arr4.sort(sortNumber));  
		var arr5 = ["惊雷","抽烟","喝酒","烫头","上网"]  //对文字进行排序是按照字符编码执行机制来进行排序
		var arr6 = ["j","c","h","t","s"]
		arr5.sort()
		arr6.sort()
		console.log(arr5)
		console.log(arr6)
// reverse():反转数组项的顺序。(翻转数组)
		var arr7 = [1,2,3,4,5,6,7]
		arr7.reverse()
		console.log(arr7)
// concat() :将参数添加到原数组中。这个方法会先创建当前数组一个副本,然后将接收到的参数添加到这个副本的末尾,
// 最后返回新构建的数组。在没有给 concat()方法传递参数的情况下,它只是复制当前数组并返回副本。
		var arr8 = [1,2,3,4,5]
		concat = arr8.concat(9,10,{name:"林",job:"前端工程师"},[{name:"贾",job:"前端工程师"}])
		console.log(concat)
		console.log(arr8)
// slice():返回从原数组中指定开始下标到结束下标之间的项组成的新数组。
// slice()方法可以接受一或两个参数,即要返回项的起始和结束位置。在只有一个参数的情况下, 
// slice()方法返回从该参数指定位置开始到当前数组末尾的所有项。如果有两个参数,该方法返回起始和结束位置之间的项但不包括结束位置的项。
		var arr9 = [1,2,3,4,5,6,7,8]
		var arr10 = arr9.slice(4)
		var arr11 = arr9.slice(3,7) //括号内的值均为下标
		console.log(arr10)
		console.log("老丝",arr11)
// splice():删除、插入和替换。
// 删除:指定 2 个参数:要删除的第一项的位置和要删除的项数。
		var arr12 = [1,2,3,4,5,6,7,8]
		arr12.splice(2,3)  //从下标2开始删除三位
		console.log(arr12)
// 插入:可以向指定位置插入任意数量的项,只需提供 3 个参数:起始位置、 0(要删除的项数)和要插入的项。
		var arr13 = [1,2,3,4,5,6,7,8]
		arr13.splice(2,1,{name:'林'},{name:'贾'})  //从下标2开始先删除一位,然后插入两个对象
		console.log(arr13)
// 替换:可以向指定位置插入任意数量的项,只需提供 3 个参数:起始位置、 0(要删除的项数)和要替换的项。(与插入方法相同)
		var arr14 = [1,2,3,4,5,6,7,8]
		arr14.splice(2,1,4) //从下标2开始先删除一位,然后插入一个新的值达到替换效果
		console.log(arr14)
// indexOf():接收两个参数:要查找的项和(可选的)表示查找起点位置的索引。从数组的开头(位置 0)开始向后查找。 返回值:下标
		var arr15 = ["惊雷","抽烟","喝酒","烫头","上网"]
		console.log(arr15.indexOf("烫头"))  //返回查找到的下标
		console.log(arr15.indexOf("烫头",4))  //从前往后开始查找从下标4开始
		console.log(arr15.indexOf("洗头"))  //查找不到返回-1
// lastIndexOf:接收两个参数:要查找的项和(可选的)表示查找起点位置的索引。从数组的末尾开始向前查找。
		var arr16 = ["惊雷","抽烟","喝酒","烫头","上网"]
		console.log(arr16.lastIndexOf("烫头"))  //返回查找到的下标
		console.log(arr16.lastIndexOf("烫头",4))  //从后往前开始查找从下标4开始
		console.log(arr16.lastIndexOf("洗头"))  //查找不到返回-1
/**
 * 
 * 数组方法---------------------------------------------------------->
 * 
 * */
// forEach():对数组进行遍历循环,对数组中的每一项运行给定函数。这个方法没有返回值。
// 参数都是function类型,默认有传参,参数分别为:遍历的数组内容;第对应的数组索引,数组本身。
		var arr17 = [{name:"林",job:"前端工程师"},{name:"贾",job:"前端工程师"},{name:"林",job:"前端工程师"}]
		var date = []
		// 问:使用forEach()循环,将对象里面的job重新放在一个数组里面  (没有返回值)
		arr17.forEach((item,index,currentrarr)=>{
				date.push(item.job)
		})
		console.log(date)
		// 举个例子
		var objarr = [{name:"李四",age:19,obj:""},{name:"张三",age:19,obj:""},{name:"王五",age:19,obj:""},]
		var obj = [1,2,3]
		this.objarr.forEach((item,index)=>{
			item.obj = this.obj[index]
		})
		console.log(objarr,"#############################")
// map():指“映射”,对数组中的每一项运行给定函数,回每次返函数调用的结果组成的数组。(返回新数组)
		var arr18 = [{name:"林",job:"前端工程师"},{name:"贾",job:"前端工程师"},{name:"林",job:"前端工程师"}]
		var arr19 = arr18.map((item,index,currentrarr)=>{
			return item.name
		})
// filter():“过滤”功能,数组中的每一项运行给定函数,返回满足过滤条件组成的数组。(返回新数组)
		var arr20 = [1,2,1,3,5,1,4,6,2]
		var arr21 = arr20.filter((item,index,currentrarr)=>{
			return item >= 3
		})
		console.log(arr21)
// every():判断数组中每一项都是否满足条件,只有所有项都满足条件,才会返回true。(返回布尔值)
		var arr22 = [1,2,1,3,5,1,4,6,2]
		var Booleans = arr22.every((item,index,currentrarr)=>{
			return item >= 1
		})
		console.log(Booleans)
// some():判断数组中是否存在满足条件的项,只要有一项满足条件,就会返回true。(返回布尔值)
		var arr23 = [1,2,1,3,5,1,4,6,2]
		var Booleans1 = arr23.some((item)=>{
			return item >= 6
		})
		console.log(Booleans1)
// 向一个对象数组里面添加新的属性
		var arry= [{a:11,b:22,c:33,d:44},{a:11,b:0,c:0,d:44},{a:11,b:22,c:99,d:99}];
		var arry2=[];
		arry.map(((item, index)=> { 
// Object.assign方法用来将源对象(source)的所有可枚举属性,复制到目标对象(target)。它至少需要两个对象作为参数,第一个参数是目标对象,后面的参数都是源对象。
			return arry2.push(Object.assign({},item,{mess1:item.c,mess2:item.d})) 
		}))
		console.log(arry2);
	</script>
</html>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值