JavaScript学习(五)

 

1.数组

 

数组本质上是一个Object,

length属性是可读写的,截断或者清空一个数组的方法是 设置它的length属性,length是数组区别对象的一个明显标志

 

多维数组:JavaScript本身是不支持多维数组的,可以通过设置数组的元素为数组的方法来实现类多维数组的功能和形式

 

数组方法:

join:String.split反方法

 

var a = [1, 2, 3];    // Create a new array with these three elements
var s = a.join();       // s == "1,2,3"
s = a.join(", ");   // s == "1, 2, 3"
 

 

reverse:反转过来

 

var a = new Array(1,2,3);     // a[0] = 1, a[1] = 2, a[2] = 3
a.reverse();              // now a[0] = 3, a[1] = 2, a[2] = 1
var s = a.join();             // s == "3,2,1"
 

 

sort:排序方法,不传参数的情况下,默认按数值方式排序

 

var a = [33, 4, 1111, 222];
a.sort();                 // Alphabetical order:  1111, 222, 33, 4
a.sort(function(a,b) {    // Numerical order: 4, 33, 222, 1111
           return a-b;    // Returns < 0, 0, or > 0, depending on order
       });
 

 

concat:数组连接操作,会展开数组,但是不会递归的展开数组

 

var a = [1,2,3];
a.concat(4, 5)          // Returns [1,2,3,4,5]
a.concat([4,5]);        // Returns [1,2,3,4,5]
a.concat([4,5],[6,7])   // Returns [1,2,3,4,5,6,7]
a.concat(4, [5,[6,7]])  // Returns [1,2,3,4,5,[6,7]]
 

 

slice:

 

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

 

splice:

 

var a = [1,2,3,4,5,6,7,8];
a.splice(4);    // Returns [5,6,7,8]; a is [1,2,3,4]
a.splice(1,2);  // Returns [2,3]; a is [1,4]
a.splice(1,1);  // Returns [4]; a is [1]
 

 

push() and pop():栈的实现

 

var stack = [];       // stack: []
stack.push(1,2);      // stack: [1,2]     Returns 2
stack.pop();             // stack: [1]            Returns 2
stack.push(3);        // stack: [1,3]     Returns 2
stack.pop();             // stack: [1]            Returns 3
stack.push([4,5]);        // stack: [1,[4,5]]  Returns 2
stack.pop()             // stack: [1]       Returns [4,5]
stack.pop();           // stack: []        Returns 1
 

 

unshift() and shift():栈实现,只不过是从数组头插入和移出

 

var a = [];            // a:[]
a.unshift(1);          // a:[1]         Returns: 1
a.unshift(22);         // a:[22,1]      Returns: 2
a.shift();                // a:[1]         Returns: 22
a.unshift(3,[4,5]);    // a:[3,[4,5],1] Returns: 3
a.shift();                // a:[[4,5],1]   Returns: 3
a.shift();                // a:[1]         Returns: [4,5]
a.shift();                // a:[]          Returns: 1
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值