javascript中数组方法汇总


Posted in Javascript onJuly 07, 2015

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);
}

以上所述就是本文的全部内容了,希望大家能够喜欢。

Javascript 相关文章推荐
event.srcElement 用法笔记e.target
Dec 18 Javascript
理解Javascript_11_constructor实现原理
Oct 18 Javascript
JS 打印功能代码可实现打印预览、打印设置等
Oct 31 Javascript
jQuery使用之设置元素样式用法实例
Jan 19 Javascript
JavaScript整除运算函数ceil和floor的区别分析
Apr 14 Javascript
15个常用的jquery代码片段
Dec 19 Javascript
JS代码实现根据时间变换页面背景效果
Jun 16 Javascript
JavaScript实现全选取消效果
Dec 14 Javascript
Vue+webpack+Element 兼容问题总结(小结)
Aug 16 Javascript
解决vue的变量在settimeout内部效果失效的问题
Aug 30 Javascript
vue项目中axios请求网络接口封装的示例代码
Dec 18 Javascript
浅谈vue项目用到的mock数据接口的两种方式
Oct 09 Javascript
jQuery原型属性和原型方法详解
Jul 07 #Javascript
在JavaScript中访问字符串的子串
Jul 07 #Javascript
jQuery.each使用详解
Jul 07 #Javascript
JavaScript中字符串拼接的基本方法
Jul 07 #Javascript
简单介绍JavaScript中字符串创建的基本方法
Jul 07 #Javascript
浅谈JavaScript中运算符的优先级
Jul 07 #Javascript
浏览器中url存储的JavaScript实现
Jul 07 #Javascript
You might like
PHP 抓取网页图片并且另存为的实现代码
2010/03/24 PHP
php $_SESSION会员登录实例分享
2021/01/19 PHP
为指定元素增加样式的js代码
2009/12/09 Javascript
XENON基于JSON变种
2010/07/27 Javascript
js使用ajax读博客rss示例
2014/05/06 Javascript
举例讲解AngularJS中的模块
2015/06/17 Javascript
JS插件overlib用法实例详解
2015/12/26 Javascript
实例讲解javascript注册事件处理函数
2016/01/09 Javascript
js实现页面a向页面b传参的方法
2016/05/29 Javascript
js实现的在线调色板功能完整实例
2016/12/21 Javascript
JQuery实现定时刷新功能代码
2017/05/09 jQuery
详解AngularJS 过滤器的使用
2018/06/02 Javascript
jQuery实现经典的网页3D轮播图封装功能【附源码下载】
2019/02/15 jQuery
Node.js使用MongoDB的ObjectId作为查询条件的方法
2019/09/10 Javascript
小程序实现锚点滑动效果
2019/09/23 Javascript
判断JavaScript中的两个变量是否相等的操作符
2019/12/21 Javascript
jQuery单页面文字搜索插件jquery.fullsearch.js的使用方法
2020/02/04 jQuery
python win32 简单操作方法
2017/05/25 Python
使用pygame模块编写贪吃蛇的实例讲解
2018/02/05 Python
python检测主机的连通性并记录到文件的实例
2018/06/21 Python
python实现黑客字幕雨效果
2018/06/21 Python
pthon贪吃蛇游戏详细代码
2019/01/27 Python
解决django model修改添加字段报错的问题
2019/11/18 Python
python实现吃苹果小游戏
2020/03/21 Python
Python将list元素转存为CSV文件的实现
2020/11/16 Python
Opencv 图片的OCR识别的实战示例
2021/03/02 Python
HTML5 video 视频标签使用介绍
2014/02/03 HTML / CSS
海淘母婴商城:国际妈咪
2016/07/23 全球购物
Photobook澳大利亚:制作相片书,婚礼卡,旅行相簿
2017/01/12 全球购物
JBL澳大利亚官方商店:扬声器、耳机和音响系统
2018/05/24 全球购物
机电专业毕业生求职信
2013/10/27 职场文书
房地产开发计划书
2014/01/10 职场文书
幼教求职信
2014/03/12 职场文书
2014年廉洁自律承诺书
2014/05/26 职场文书
Django使用channels + websocket打造在线聊天室
2021/05/20 Python
实战Python爬虫爬取酷我音乐
2022/04/11 Python