数组常用方法

1、创建一个数组

方法一:创建一个长度为零的数组

 var arr = new Array();

方法二:创建一个长度为5的数组

var arr = new Array(5);

alert(arr.length);         -----------得到5

方法三:创建一个指定内容的数组

var arr = new Array(“张三”,”李四”,”王五”,”马六”,”冯七”,”赵八”,”魏九”);

方法四:简单写法

var arr = [“张三”,”李四”,”王五”,”马六”,”冯七”,”赵八”,”魏九”];

方法五:创建空的数组

var arr = [];

2、访问数组

数组的名称加下标(下标从0开始)

例:var arr = (1,2,3,4,5,6,);

alert(arr[2]);--------------------->得到3

3、设置数组的值

例:arr[4] =“牛”;---------->把数组中第四个值换成 牛

4、添加内容

例:arr[4] =“花”;

arr[5] =“好”;

alert(arr);----------------->会将数组第5、6个的值写成”花”,”好”

注:javascript是一种若类型的编程语言,可以动态的改变数组的长度

5、数组的遍历

5.1、for循环遍历(把内容一个个输出)

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

document.write(arr[i]);

}

5.2、for in循环遍历

var arr=[];

arr[1000] =“牛”;

for(var  k  in  arr){

console.log(arr[k]);

}

注:在特长数组的遍历中,for in循环比for循环运算的快,不易死机

5.3、for Each循环遍历(扩展ES6新语法)

arr.forEach(

function(elem,index,list){

console.log(elem,index,list);

}

)

注:elem循环的内容、index下标、list数值

6、数组的方法

6.1、后删除pop()

例:var arr = [“张三”,”李四”,”王五”,”马六”,”冯七”,”赵八”,”魏九”];

arr.pop();

alert(arr);----------------->得到:张三,李四,王五,马六,冯七,赵八

6.2、前删除shift()

例:var arr = [“张三”,”李四”,”王五”,”马六”,”冯七”,”赵八”,”魏九”];

arr.shift();

alert(arr);----------------->得到:李四,王五,马六,冯七,赵八,魏九

6.3、后添加push(“”)

例:var arr = [“张三”,”李四”,”王五”,”马六”,”冯七”,”赵八”,”魏九”];

arr.shift(“嘎嘎”);

alert(arr);----------------->得到:李四,王五,马六,冯七,赵八,魏九,嘎嘎

6.4、前添加unshift(“”)

例:var arr = [“张三”,”李四”,”王五”,”马六”,”冯七”,”赵八”,”魏九”];

arr.unshift(“嘎嘎”);

alert(arr);------------------>得到:嘎嘎,李四,王五,马六,冯七,赵八,魏九

6.5、从中间添加、删除splice()

例:var arr = [1,2,3,4,5,6,7];

arr.splice(0,0,6,6);

alert(arr);-------------------->得到:6,6,1,2,3,4,5,6,7

解析:arr.splice(从第几个,删除几个,添加1,添加2,·······)

6.6、切一段slice()

例:var arr = ["a","b","c","d","e","f"];

var b=arr.slice(1,2);

alert(b);-------------------->得到:b

解析:slice(从第几个,切到第几个)切到第几个时不含最后一个

6.7、连一块concat()

例:var arr = ["张三","李四","王五","马六","冯七"];

var arr2 = [1,3,5,7,9];

var arr3;

arr3 = arr.concat(arr2);

alert(arr3);---------------得到:张三,李四,王五,马六,冯七,1,3,5,7,9

6.8、前后反转reverse()

例:var arr = [1,2,3,4,5,6,7];

arr.reverse();

alert(arr);-------------------->得到:7,6,5,4,3,2,1

7、数组的排序

例:var arr = [1,2,3,4,5,6,7];

arr.sort(function(a,b){

if(a>b){return -1;}

else{return 1;}

})

alert(arr);------------------>得到7,6,5,4,3,2,1

或:var arr = [1,25,13,4,55,26,47,58];

arr.sort();

alert(arr);------------------>得到:1,13,25,26,4,47,55,58

8、数组最大值

【方法1】

var arr = [10,52,2,3,96,87,25,45]

var max = arr[0];

for(var k in arr){

if(arr[k]>max){

max = arr[k];

}

}

alert(max);----------------------->得到:96

【方法2】

用math,min冒充方法(call和apply用法和区别查资料)

max = Math.max.apply(null,arr);

alert(“最大的数是”+max);

注:求min方式同上。

9、数组的去重

分析:1.新建一个新的数组(数组为空)

2.遍历arr,若新数组里有当前数,则不记录。若新数组里无当前数,则该数加

入新数组

3.循环完成的新数组就是我们去重的数组

例1:var arr = [1,1,25,25,23,36,23];

var arr2 = [];

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

if(arr2.indexOf(arr[i]) == -1){

arr2.push(arr[i]);

}

}

alert(arr2);或document.write(arr2);

例2(ES5):

let arr = [1,1,22,2,55,3,1,2,4];

let result = arr.filter(function(item,index,self){

return self.indexOf(item)===index;

//如果查找出来的下标 不是 当前下标 代表是重复的

})

console.log(result);

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 205,386评论 6 479
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,939评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,851评论 0 341
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,953评论 1 278
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,971评论 5 369
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,784评论 1 283
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,126评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,765评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,148评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,744评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,858评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,479评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,080评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,053评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,278评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,245评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,590评论 2 343

推荐阅读更多精彩内容

  • 添加(返回新的数组长度) 末尾添加 arr.push(els) 开头添加 arr.unshift(els) 删除(...
    追卓2018阅读 421评论 0 0
  • 数组常用方法: concat();把数组元素拼接在一个素组中 例如:var arr1=[1,2,3,4] var ...
    ZYzan阅读 244评论 0 0
  • JavaScript Array对象用于在单个的变量中存储多个值,它有很多方法,今天就先总结一些经常会用到的。最基...
    levinhax阅读 559评论 0 2
  • 数组常用方法 一、js数组常用方法: 1、join() Array.join() 方法将数组中所有元素都转换成字...
    janey_默阅读 494评论 0 0
  • 整理一下常用的数组方法(含ES6) Array.from(arrayLike[, mapFn[, thisArg]...
    慢飞鸟阅读 251评论 0 0