博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
javascript学习记录-数组(4) 2014/02/21
阅读量:6273 次
发布时间:2019-06-22

本文共 2040 字,大约阅读时间需要 6 分钟。

hot3.png

多维数组

不存在真正意义的多维数据,实现的方式是数组的数组,直接上例子

var table = new Array(10);for (var i = 0; i < table.length; i++) {    table[i] = new Array(10);}for ( var row = 0; row < table.length; row++) {    for ( var col = 0; col < table[row].length; col++) {        table[row][col] = row * col;    }}var product = table[5][7];    //35

数组的方法

ECMAScript 3

1 Array.join(splitor)

返回所有数据中的元素值为字符串,然为用分隔符连接起来,默认用逗号(,)连接

例子

var a = [1, 2, 3];    // [1, 2, 3]a.join()    // "1,2,3"a.join(' ');    // "1 2 3"a.join('');    //"123"var b = new Array(10);b.join('-');    //"---------"

Array.join()是String.split()的逆方法

2 Array.reverse()

将数据逆序然后存储到原来的数组中

举例:

var a = [1, 2, 3]a.reverse().join()    // "3,2,1"

3 Array.sort()

数组元素值排序,默认是转换成字符串后按照字母顺序排列,如果数据元素有值是undefined,则排到最后

举例

var a = new Array(undefined, 'banana', 'cherry', 'apple');    // ["banana", "cherry", "apple"]a.sort();    // ["apple", "banana", "cherry", undefined]

如果想自定义排序,则传递一个比较函数来自定义代码

举例

var a = [33, 4, 1111, 2222];a.sort();    // [1111, 2222, 33, 4]a.sort(function(a, b) { return a - b; });    // [4, 33, 1111, 2222]a.sort(function(a, b) { return b - a; });    // [2222, 1111, 33, 4]

如果想a比b小,那就返回小于0的数,反之大于0的数,如果相等返回0

更复杂点的例子

var a = ['ant', 'Bug', 'cat', 'Dog'];a.sort();    // ["Bug", "Dog", "ant", "cat"]a.sort(function(s, t) {     var a = s.toLowerCase();     var b = t.toLowerCase();     if (a < b) return -1;    if (a > b) return 1;     return 0; });// ["ant", "Bug", "cat", "Dog"]

4 Array.concat()

返加新数组,类似于push方法,但不改变原数组的值,直接上例子

var a = [1, 2, 3];    // [1, 2, 3]a.concat(4, 5);    // [1, 2, 3, 4, 5]a    //[1, 2, 3]a.concat(4, 5);    // [1, 2, 3, 4, 5]a.concat(4, 5);    // [1, 2, 3, 4, 5]a.concat([4, 5]);    // [1, 2, 3, 4, 5] ,如果传递的是数组,自动扁平化a.concat([9, [4, 5]]);    // [1, 2, 3, 9, [4, 5]],但不会递归

5 Array.slice(start, end)

返回数组的一部分元素组成的数组,>=start但小于end

var a = [1, 2, 3, 4, 5];a.slice(0, 3);    // [1, 2, 3]a.slice(3);    // [4, 5]a.slice(1,-1);    // [2, 3, 4]a.slice(-3, -2);    // [3]

6 Array.splice(start, delcount, insert...)

用于在数据中插入或删除元素

转载于:https://my.oschina.net/moyung2014/blog/201927

你可能感兴趣的文章
配置druid内置的log实现
查看>>
[LeetCode] Meeting Rooms II 会议室之二
查看>>
泛型与非泛型的区别
查看>>
ASP.NET MVC:WebPageBase.cs
查看>>
Xen虚拟机的创建和启动
查看>>
Design Pattern: Factory Method 模式
查看>>
改善C#程序的建议7:正确停止线程
查看>>
数据库SQL优化大总结之 百万级数据库优化方案(转)
查看>>
瘦了!光荣!都是忙工作忙的!
查看>>
使用嵌入式关系型SQLite数据库存储数据
查看>>
初步学习pg_control文件之十五
查看>>
使用Notepad++开发C#,一个复杂点的csscript脚本
查看>>
jQuery的Internal DSL
查看>>
PL/pgSQL函数带output参数例子
查看>>
【spring set注入 注入集合】 使用set注入的方式注入List集合和Map集合/将一个bean注入另一个Bean...
查看>>
Nginx多站点设置及负载均衡
查看>>
Spring中bean注入前后的一些操作:
查看>>
如何让oracle DB、监听和oem开机启动(dbstart)
查看>>
HDU 2639 Bone Collector II(01背包变形【第K大最优解】)
查看>>
MailMail正式发布!注册码免费发放活动开启!(已结束~~不要再回复咧~)
查看>>