0
点赞
收藏
分享

微信扫一扫

JavaScript--------JavaScript数组

数组的创建

语法:

var array-name = [item1, item2, ...];

实例:

var cars = ["大众", "雪铁龙", "丰田"];        //创建了一个名为cars的数组

语法:

var array-name = new Array(item1,item2,.....);

实例:

var cars = new Array("大众", "雪铁龙", "丰田");

数组的访问

 实例:

var name = cars[0];           //此代码可以访问数组的第一个元素

cars[0] = "本田";            //此代码可以对数组元素进行修改

数组的length属性

实例:

var fruits = ["香蕉", "橘子", "苹果", "芒果"];
fruits.length;                       // fruits 的长度是 4

数组中的方法

        把数组转换为字符串

 实例:

var fruits = ["香蕉", "橘子", "苹果", "芒果"];
document.getElementById("demo").innerHTML = fruits.toString();
//结果为 香蕉, 橘子,苹果,芒果

 实例:

var fruits = ["香蕉", "橘子", "苹果", "芒果"];
document.getElementById("demo").innerHTML = fruits.join(" * "); 
//结果为 香蕉*橘子*苹果*芒果

      Popping 和 Pushing

                 Popping

 实例:

var fruits = ["香蕉", "橘子", "苹果", "芒果"];
fruits.pop();              // 从 fruits 删除最后一个元素("芒果")

 pop() 方法返回“被弹出”的值:

var fruits = ["香蕉", "橘子", "苹果", "芒果"];
var x = fruits.pop();      // x 的值是 "芒果"

                 Pushing

 实例:

var fruits = ["香蕉", "橘子", "苹果", "芒果"];
fruits.push("梨");       //  向 fruits 添加一个新元素

 push() 方法返回新数组的长度:

var fruits = ["香蕉", "橘子", "苹果", "芒果"];
var x =  fruits.push("梨");   //  x 的值是 5

        位移元素

 shift ( )实例:

var fruits = ["香蕉", "橘子", "苹果", "芒果"];
fruits.shift();            // 从 fruits 删除第一个元素 "香蕉"

 shift() 方法返回被“位移出”的字符串:

var fruits = ["香蕉", "橘子", "苹果", "芒果"];
fruits.shift();             // 返回 "香蕉"

 unshift ( )实例:

var fruits = ["香蕉", "橘子", "苹果", "芒果"];
fruits.unshift("柠檬");    // 向 fruits 添加新元素 "柠檬"

 unshift() 方法返回新数组的长度

var fruits = ["香蕉", "橘子", "苹果", "芒果"];
fruits.unshift("柠檬");    // 返回 5

        删除元素

实例: 

var fruits = ["香蕉", "橘子", "苹果", "芒果"];
delete fruits[0];           // 把 fruits 中的首个元素改为 undefined

 注意:使用 delete 会在数组留下未定义的空洞。请使用 pop ( ) 或 shift ( ) 取而代之。

        拼接数组

 实例:

var fruits = ["香蕉", "橘子", "苹果", "芒果"];
fruits.splice(2, 0, "柠檬", "火龙果");
//执行语句后该数组元素变为:香蕉, 橘子,柠檬,火龙果,苹果,芒果

第一个参数(2)定义了应添加新元素的位置(拼接)。

第二个参数(0)定义应删除多少元素。

其余参数(“Lemon”,“Kiwi”)定义要添加的新元素。

splice ( ) 方法返回的是一个包含已删除项的数组

var fruits = ["香蕉", "橘子", "苹果", "芒果"];
fruits.splice(0, 1);        // 删除 fruits 中的第一个元素

        合并(连接)数组

 实例(合并两个数组)

var myGirls = ["Cecilie", "Lone"];
var myBoys = ["Emil", "Tobias", "Linus"];
var myChildren = myGirls.concat(myBoys);   // 连接 myGirls 和 myBoys

        裁剪数组

 实例:

var fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];
var citrus = fruits.slice(1);         
//此时citrus为一个新的数组其中元素为 Orange,Lemon,Apple,Mango
//此方法也可以传递两个参数
var citrus1 = fruits.slice(1,3);
//其结果为 Orange,Lemon

数组的排序

        数组排序       

 实例:

var fruits = ["香蕉", "橘子", "苹果", "芒果"];
fruits.sort();            // 对 fruits 中的元素进行排序
// 排序结果为:橘子,芒果,苹果,香蕉

        反转数组

实例: 

var fruits = ["香蕉", "橘子", "苹果", "芒果"];
fruits.sort();            // 对 fruits 中的元素进行排序
fruits.reverse();         // 反转元素顺序
// 结果为:香蕉,苹果,芒果,橘子

        数字排序       

实例:

var points = [40, 100, 1, 5, 25, 10];
points.sort();        //此结果为 1,10,100,25,40,5

显然,这样比较出来的顺序是不太对的.所以我们就需要将这个方法进行改进一下:

实例:

var points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return a - b});    //结果为:1,5,10,25,40,100

 相似的使用相同的技巧对数组进行降序排序:

实例:

var points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return b - a}); //结果为: 100,40,25,10,5,1

        以随机顺序排序数组 

实例:

var points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return 0.5 - Math.random()}); 

        查找最高(或最低)的数组值

实例:

function myArrayMax(arr) {
  return Math.max.apply(null, arr);
}

function myArrayMin(arr) {
    return Math.min.apply(null, arr);
}

举报

相关推荐

0 条评论