js数组对象

一、属性

1.length设置或返回数组元素的数目。

2.constructor返回构造函数的引用

var a=["a","b",1,2];
alert(a.constructor)
//function Array(){
[native code]
}

二、方法
    A.删除或添加类

      1. myarr.push(数组元素......) 向数组的末尾添加新的元素,返回值是新数组的长度。可以一次添加多个元素

var a=["a","b",1,2];
alert(a.push("c","d"))
alert(a)

      2. myarr.unshift(数组元素.....)向数组的开头加入新的元素,返回值是新数组的长度可以一次添加多个元素

var a=["a","b",1,2];
alert(a.unshift("c","d"))
alert(a)

      3. myarr.pop()删除数组的最后一个元素,返回删除的元素

var a=["a","b",1,2];
alert(a.pop())

      4. myarr.shift() 删除数组的第一个元素,返回删除的元素

var a=["a","b",1,2];
alert(a.shift())

5.万能的添加删除函数
 myarr.splice(index,数量,添加的元素.....) 

(1)index   从何处开始添加或删除,必须是数值类型(数组的下标)

(2) 数量    规定了删除的个数,如果是0,则不删除
(3)  需要添加的元素,可以当作替换的元素

如果有删除的元素,返回删除的元素

var a=["a","b",1,2];
alert(a.splice(1,0,"c","d"))

B.数组的转换
       mystr.split() 
       myarr.join([分隔符])
       把数组元素按照指定分隔符组合成一个字符串,如果没有指定分隔符,默认是用“,”
       返回结果就是组合成的字符串

var a=["a","b",1,2];
alert(a.join())
alert(a.join("-"))

 C.数组的分割 myarr.slice()从截取指定的开始位置,到结束位置(不包括)的元素。如果不指定结束位置,则从  指定的开始位置,取到结尾(数组的下标) 支持负数(-1开头)  返回新数组。

var a=["a","b",1,2,"百度","www.baidu.com"];
alert(a.slice(2,4))
alert(a.slice(2))
alert(a.slice(-2,-1))

D.排序
      冒泡排序
     myarr.sort() 对数组进行排序,如果没有参数,则按照字母的编码进行排序,如果要按照其他的顺序    来排序,要提供一个函数。

var arr=[2,1,34,12,45]
        
//					2     1    1    1   1
//					1     2    2    2   2
//					34    34   34   12  12
//					12    12   12   34   34
//					45    45   45   45   45
function mySort (fun) {

for (var i=0; i<this.length; i++) {

			      for (var j=0; j<this.length-i; j++) {
				     if(this[j]>this[j+1]){
					    var aa=this[j];
					   this[j]=this[j+1]
					   this[j+1]=aa;
					 }
			      }
			}
			return this
}


Array.prototype.mySort=	mySort	
      alert(arr.mySort())

​

sort排序会提供两个参数(a,b)
    a<b  a在b前 
    a=b
    a<b

sort()
var a=["b","a","c","www.baidu.com"];
ar a=[1,3,5,2];
var a=[12,34,123]
a.sort(function(a,b) {
 return a-b
});
alert(a)

 F.数组的连接
   myarr.concat()
   连接两个或更多的数组,并返回新数组,但是对原数组没有任何影响.

var a=[1,2,3];
var c=["a","b","c"]
alert(a.concat(a,c))

猜你喜欢

转载自blog.csdn.net/qq_35029061/article/details/82825040
今日推荐