数据结构之数组篇

数据结构之数组篇(数组的基本使用)

什么是数组?

Array 对象用于在单个的变量中存储多个值。
数组对象的作用是:使用单独的变量名来存储一系列的值。

创建和初始化数组
let arr = new Array() //声明并初始化一个数组 不推荐
let arr = [] // 推荐这种方式声明数组

Array常用方法

shift:删除数组第一个元素并返回

 var arr = [];
   arr[0] = "zhansang"
   arr[1] = "lisi"
   arr[2] = "wangwu"
   alert(arr.shift()) //  zhansang
   alert(arr) // lisi,wangwu

pop:删除数组返回最后一个元素

 var arr = [];
   arr[0] = "zhansang"
   arr[1] = "lisi"
   arr[2] = "wangwu"
   alert(arr.pop()) //  wangwu
   alert(arr) //zhansang,lisi

join:用于把数组中的所有元素放入一个字符串。元素是通过指定的分隔符进行分隔的。

 var arr = [];
   arr[0] = "zhansang"
   arr[1] = "lisi"
   arr[2] = "wangwu"
   alert(arr.join()) // zhansang,lisi,wangwu

reverse :反转数组

let a =  [1,2,3]
alert(a.reverse()) //[3,2,1]

push :向数组的末尾添加一个或更多元素,并返回新的长度

let a = [1,2,3]
alert(a.push(4))

isArray:判断对象是否为数组 返回值是true/false

function myFunction() {
    var a = [1,2,3,4,5];
     alert(Array.isArray(a);) //返回true
}
此方案的问题在于 ECMAScript 5 不支持老的浏览器。
function isArray(x) {
    return x.constructor.toString().indexOf("Array") > -1;
}

concat:拼接一个或多个数组 该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本

let a  = [1,2,3]
let b  = [4,5]
alert(a.concat(b)) // [1,2,3,4,5]

slice:数组的截取 并返回选定的元素(并不会更改原数组,只会返回一个子数组)

用法: arr.slice(start,end)
 1. 从start开始截取到end但是不包括end
 2. 返回值为截取出来的元素的集合
 3. 使用负值从数组的尾部选取元素。
 4. 如果 end 未被规定,那么 slice() 方法会选取从 start 到数组结尾的所有元素。
 var arr1 = [1,44,56,12,78,99,8,];
 var arr2 = arr1.slice(2,4) //从index为2截取到index为4之前不包括4
 console.log(arr2); //[56,12]
 console.log(arr1); //[1, 44, 56, 12, 78, 99, 8] 原数组没有发生改变

sort:对数组元素的排序(作用原数组)

注意:如果使用该方法没有传递参数 那么默认是将字母顺序进行排序
var arr = ["Zhansan", "Leili", "Sili", "Wangwu","Songliu", "Hanqi"]
console.log(arr.sort()) //["Hanqi", "Leili", "Sili", "Songliu", "Wangwu", "Zhansan"]
传递参数的排序方式
 <script>
 //从小到大
	function positive(a,b){
		return a - b
	}
	//从大到小
		function invertedr(a,b){
		return b - a
	}
	倒序
	var arr =[12,5,788,55,46,23,78,15,26]
    console.log(arr.sort(positive)) // [5, 12, 15, 23, 26, 46, 55, 78, 788]
    console.log(arr.sort(invertedr))  //[788, 78, 55, 46, 26, 23, 15, 12, 5]
</script>

splice :添加/删除项目 返回被删除的项目(作用于原数组)

语法:array.splice(index,howmany,item1....item)
 1. splice() 方法可删除从 index 处开始的零个或多个元素,并且用参数列表中声明的一个或多个值来替换那些被删除的元素。
如果从 arrayObject 中删除了元素,则返回的是含有被删除的元素的数组
    function add(arr,index,howmany,item) {
        return arr.splice(index,howmany,item)
      }			
    var arr =[12,5,788,55,46,23,78,15,26]
    add(arr,2,0,"William") //添加
    console.log(arr) //[12, 5, "William", 788, 55, 46, 23, 78, 15, 26]
   	//  add(arr,2,1,"William") //替换
   	// console.log(arr)
   	删除
   	var arr3 = [1,2,3,4,5,6,7];
  	 var arr4 = arr3.splice(2,3)
 	 console.log(arr4); //[3,4,5];
       console.log(arr3); //[1,2,6,7,"f1","f2"]; 
   	
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值