JS数组方法汇总 array数组元素的添加和删除

js数组元素的添加和删除一直比较迷惑,今天终于找到详细说明的资料了,先给个我测试的代码^-^
var arr = new Array();
arr[0] = "aaa";
arr[1] = "bbb";
arr[2] = "ccc";
//alert(arr.length);//3
arr.pop();
//alert(arr.length);//2
//alert(arr[arr.length-1]);//bbb
arr.pop();
//alert(arr[arr.length-1]);//aaa
//alert(arr.length);//1

var arr2 = new Array();
//alert(arr2.length);//0
arr2[0] = "aaa";
arr2[1] = "bbb";
//alert(arr2.length);//2
arr2.pop();
//alert(arr2.length);//1
arr2 = arr2.slice(0,arr2.length-1);
//alert(arr2.length);//0
arr2[0] = "aaa";
arr2[1] = "bbb";
arr2[2] = "ccc";
arr2 = arr2.slice(0,1);
alert(arr2.length);//1
alert(arr2[0]);//aaa
alert(arr2[1]);//undefined

shift:删除原数组第一项,并返回删除元素的值;如果数组为空则返回undefined
var a = [1,2,3,4,5];
var b = a.shift(); //a:[2,3,4,5]   b:1 

unshift:将参数添加到原数组开头,并返回数组的长度
var a = [1,2,3,4,5];
var b = a.unshift(-2,-1); //a:[-2,-1,1,2,3,4,5]   b:7
注:在IE6.0下测试返回值总为undefined,FF2.0下测试返回值为7,所以这个方法的返回值不可靠,需要用返回值时可用splice代替本方法来使用。 

pop:删除原数组最后一项,并返回删除元素的值;如果数组为空则返回undefined
var a = [1,2,3,4,5];
var b = a.pop(); //a:[1,2,3,4]   b:5 //不用返回的话直接调用就可以了

push:将参数添加到原数组末尾,并返回数组的长度
var a = [1,2,3,4,5];
var b = a.push(6,7); //a:[1,2,3,4,5,6,7]   b:7 

concat:返回一个新数组,是将参数添加到原数组中构成的
var a = [1,2,3,4,5];
var b = a.concat(6,7); //a:[1,2,3,4,5]   b:[1,2,3,4,5,6,7] 

splice(start,deleteCount,val1,val2,...):从start位置开始删除deleteCount项,并从该位置起插入val1,val2,...
var a = [1,2,3,4,5];
var b = a.splice(2,2,7,8,9); //a:[1,2,7,8,9,5]   b:[3,4]
var b = a.splice(0,1); //同shift
a.splice(0,0,-2,-1); var b = a.length; //同unshift
var b = a.splice(a.length-1,1); //同pop
a.splice(a.length,0,6,7); var b = a.length; //同push 

reverse:将数组反序
var a = [1,2,3,4,5];
var b = a.reverse(); //a:[5,4,3,2,1]   b:[5,4,3,2,1] 

sort(orderfunction):按指定的参数对数组进行排序
var a = [1,2,3,4,5];
var b = a.sort(); //a:[1,2,3,4,5]   b:[1,2,3,4,5] 

slice(start,end):返回从原数组中指定开始下标到结束下标之间的项组成的新数组
var a = [1,2,3,4,5];
var b = a.slice(2,5); //a:[1,2,3,4,5]   b:[3,4,5] 

join(separator):将数组的元素组起一个字符串,以separator为分隔符,省略的话则用默认用逗号为分隔符
var a = [1,2,3,4,5];
var b = a.join("|"); //a:[1,2,3,4,5]   b:"1|2|3|4|5"

再给个利用数组模拟javaStringBuffer处理字符串的方法:

/**
* 字符串处理函数
*/
function StringBuffer()
{
var arr = new Array;
this.append = function(str)
{
    arr[arr.length] = str;
};

this.toString = function()
{
    return arr.join(""); //把append进来的数组ping成一个字符串
};
}

今天在应用中突然发现join是一种把数组转换成字符串的好方法,故封装成对象使用了:

/**
* 把数组转换成特定符号分割的字符串
*/
function arrayToString(arr,separator)
{
if(!separator) separator = "";//separator为null则默认为空
    return arr.join(separator);
}

/**
* 查找数组包含的字符串
*/
function arrayFindString(arr,string)
{
var str = arr.join("");
    return str.indexOf(string);
}
时间: 2024-12-27 03:01:42

JS数组方法汇总 array数组元素的添加和删除的相关文章

JS数组方法汇总 array数组元素的添加和删除 - yuzhongwusan - 博客园

body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI",Tahoma,Helvetica,Sans-Serif,"Microsoft YaHei", Georgia,Helvetica,Arial,sans-serif,宋体, PMingLiU,serif; font-size: 10.5pt; line-height: 1.5;

JavaScript Array 数组方法汇总

JavaScript Array 数组方法汇总 1. arr.push() 从后面添加元素,返回值为添加完后的数组的长度 var arr = [1,2,3,4,5] console.log(arr.push(5)) // 6 console.log(arr) // [1,2,3,4,5,5] 2.arr.unshift() 从前面添加元素, var arr = [1,2,3,4,5] console.log(arr.unshift(2)) // 6 console.log(arr) //[2,1

数组方法总结 常用数组方法总结 js的数组或对象常用方法总结

js常用数据类型的方法使用归纳 * String---->是一个对象    * 字符串可以看成是字符组成的数组,但是js中没有字符类型 * 字符是一个一个的,在别的语言中字符用一对单引号括起来 * 在js中字符串可以使用单引号也可以使用双引号 * 因为字符串可以看成是数组,所以,可以通过for循环进行遍历 * 字符串特性:不可变性,字符串的值是不能改变 * 字符串的值之所以看起来是改变的,那是因为指向改变了,并不是真的值改变了 * 字符串的常用属性:     * .length------>字

js实现class的样式的修改、添加、删除

比较常见的js前端功能,通过修改标签的className实现相应的功能 代码例如: <table> <tbody> <tr> <td>js实现class的样式的修改.添加.删除</td> <td> <a e_value="g_sn" ename="商品编码" class="goods_sale_property" href="javascript:void(0

JS 数组方法 array数组声明 元素的添加和删除 等

声明数组 var arr1 = [1,2,3,4,5]; var arr2 = new Array(100); //声明长度为100的arr2数组. arr2=[]; arr2.length = 100; var arr3 = new Array([1,2,3,4,5]); //是一个二维数组. arr3 = [[1,2,3,4,5]]; arr3.length = 1; arr3[0] = [1,2,3,4,5];arr3[0].length = 5; var arr4 = new Array

JavaScript——数组常用数组方法汇总

//1.方法功能是什么 //2.传递的参数是什么 //3.返回值是什么 //4.原来的数组是否改变/* 第一组:关于数组的增加.删除和修改 1.push 向数组末尾增加新的内容,返回的是添加后新数组的长度,原有的数组改变了 var arr=[10,11,12,13,14,15]; var res=arr.push(16,17); console.log(res); //8 2.unshift 向数组的开头增加新的内容,返回的是添加后新数组的长度,原来的数组也改变 var res=arr.unsh

JavaScript——数组(三)数组方法汇总

前面两篇大致介绍了一下数组的基本特性,这里说一下数组的常用方法: Array.join() 将数组中所有的元素都转化为字符串并拼接在一起,返回最后生成的字符串. 不改变原数组  可通过指定的分隔符来分隔各个元素,如果不指定分隔符,则默认使用逗号. 1 var arr = [1,2,3];//创建一个包含三个元素的数组 2 arr.join(); //"1,2,3" 3 arr.join(" "); //"1 2 3" 4 arr.join(&qu

ES6的数组方法之Array.from

首先说说什么是数组:数组在类型划分上归为Object,属于比较特殊的对象,数组的索引值类似于对象的key值. 数组的几个注意点: 1.数组的长度是可读属性,不可更改,数组的长度根据索引最大值. 2.数组的索引值可以是字符串等,但这个不影响数组的长度. 3.数组根据下标最大值,会自动补齐对应的其他索引值,且值为空. ES6新增了数组的一系列方法,如Array.of,Array.from,Array.find等等 数组与类数组的最大区别在于数组自身具有迭代器iterator Array.from  

数组方法汇总

1,javascript提供的原型方法有:join(),push(),pop(),shift(),unshift(),concat(),slice(),splice(),sort(),reverse() 1)join(separator):将数组以分隔符连接起来,返回连接后的字符串,默认以','分隔. var arr = [1,2,3]; arr.join(); //1,2,3 arr.join('-') //1-2-3 2)push()&pop() push():接收任意数量参数,并添加至数组