js之数组

1.数组可以动态调整。

var names=new array();
var names= new array(20);
var names = new array("jack","linda");
var name = [];

2.数组中栈操作

var names=[];
names.push("A");//将数组元素压入栈
names.push("B");
names.push("C");
此时names=[A,B,C];
/*第一种,弹出栈*/
var str = names.pop();//弹出C
console.log(str);//网页中的console输出
str = names.pop();//弹出B
str = names.pop();//弹出A
/*第二种:用shift采取先入先出取数组元素**/
var a = names.shift();

  /*用unshift将压入元素进入数组*/
names.unshift("A");
names.unshift("B");
names.unshift("C");
此时names=[C,B,A];

3.数组元素排序
如果一个数想排在另一个数的前面就返回一个负数。
如果一个数想排在另一个数的后面就返回一个正数。
如果两个数相等,就返回一个0;

排序(升序)函数:
function fn( n1,n2){
if(n1>n2){
return 1;
}else if(n1==n2){
return 0;
}else{
 return -1;
 }
 }
 var nums=[1,2,4,13,11,3,58,67]
 nums.sort(fn);
 console.log(nums.toString());
等价于:
nums.sort(function(n1,n2){
if(n1>n2){
return 1;
}else if(n1==n2){
return 0;
}else{
 return -1;
 }
});
等价于:
nums.sort(function(n1,n2){
return n1-n2;
});
**3.数组方法**
concat:基于当前数组中的所有项创建一个新的数组。该方法会创建当前数组的一个副本,然后将接收到的参数添加到这个副本的末尾。
(function(){
  var nums=[1,2,3];
  var nums2=nums.concat();
  nums2.push(4);
  console.log(nums2.toString());
  
})
slice:基于当前数组中的是一个或多个项创建一个新的数组。该方法接受一个或两个参数,分别代表返回项的起始和结束位置。如果只有一个参数,则从当前位置到数组结束。该方法操作不会影响到原始数组。
nums.slice(0,4);去0-4下标元素,左闭右开。
splice:可以对数组中的元素进行插入、替换和删除操作。
nums = ["a","b","c","d","e"];
nums.splice(0,3);//从0开始,删掉3个元素--->["d","e"]
nums.splice(1,0,"x","y");//从1开始,删掉0个元素,插入x,y;----->["a","x","y","b","c","d","e"]
nums.splice(1,2,"x","y");//从1开始删掉两个,用x,y 替换。---->["a","x","y","d","e"]

4.数组迭代

nums=["a","b","c","d","e","f"];
(1)for(var i = 0;i<nums.length();i++){
         console.log(nums[i]);
        }
  
 (2) for-in 循环
     for(var i in nums){
      console.log(nums[i]);//i不是元素,是索引
    }
 (3)for-each
 nums.foreach(function(item,index,array){
 console.log(item+"->"+index+"->"+array);
 });
 
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值