让前端飞Web前端之路

js数组操作

2019-10-10  本文已影响0人  手指乐
var mycars=new Array()
mycars[0]="Saab"
mycars[1]="Volvo"
mycars[2]="BMW"

var mycars=new Array(3)
mycars[0]="Saab"
mycars[1]="Volvo"
mycars[2]="BMW"
<script type="text/javascript">

var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"

var arr2 = new Array(3)
arr2[0] = "James"
arr2[1] = "Adrew"
arr2[2] = "Martin"

var arr3 = new Array(2)
arr3[0] = "William"
arr3[1] = "Franklin"

document.write(arr.concat(arr2,arr3))

</script>
<script type="text/javascript">

var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"

document.write(arr.join())

</script>

George,John,Thomas

<script type="text/javascript">

var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"

document.write(arr.join("."))

</script>
George.John.Thomas
<script type="text/javascript">

var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"

document.write(arr + "<br />")
document.write(arr.slice(1) + "<br />")
document.write(arr)

</script>
George,John,Thomas
John,Thomas
George,John,Thomas

<script type="text/javascript">

var arr = new Array(6)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
arr[3] = "James"
arr[4] = "Adrew"
arr[5] = "Martin"

document.write(arr + "<br />")
document.write(arr.slice(2,4) + "<br />")
document.write(arr)

</script>
George,John,Thomas,James,Adrew,Martin
Thomas,James
George,John,Thomas,James,Adrew,Martin

begin从0开始计数,不包括end

<script type="text/javascript">

function sortNumber(a,b)
{
return a - b
}

var arr = new Array(6)
arr[0] = "10"
arr[1] = "5"
arr[2] = "40"
arr[3] = "25"
arr[4] = "1000"
arr[5] = "1"

document.write(arr + "<br />")
document.write(arr.sort(sortNumber))

</script>

10,5,40,25,1000,1
1,5,10,25,40,1000

return a-b 跟这个一样:

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

第一个参数:下标
第二个参数:删除数量,0表示不删除
第三个以后的参数:插入元素,长度可以动态变化,不填表示不插入

var list = [];
list.push(1);
list.push(2);
list.push(3);
console.log(list); // [1, 2, 3]

// 删除
list.splice(0, 1);  // 删除  -> 从下标为0开始,长度为1
console.log(list); // [2,3]
list.splice(0, 2);  // 删除  -> 从下标为0开始,长度为2
console.log(list); // []

//把上面四句替换成下面四句
//替换 
list.splice(0, 1, 4); // 替换 -> 从下标为0开始,长度为1的数组元素替换成4
console.log(list);  // [4,2,3]
list.splice(0, 2, 4); // 替换 -> 从下标为0开始,长度为2的数组元素替换成4(即4,2整体替换成4)
console.log(list);  // [4,3]

//把上面四句替换成下面四句
list.splice(1, 0, 5); // 表示在下标为1处添加一项5 
console.log(list); // [1,5,2,3]  
list.splice(1,0,5,4,3); // 表示在下标为1处依次添加5/4/3三个元素 
console.log(list); // [1,5,4,3,2,3]
var data = [1, 2, 3, 4];
var arrayOfSquares = data.map(function (item) {
  return item * item;
});
alert(arrayOfSquares); // [1, 4, 9, 16]

在实际使用的时候,我们可以利用map方法方便获得对象数组中的特定属性值们。例如下面这个例子:

var users = [
  {name: "张含韵", "email": "zhang@email.com"},
  {name: "江一燕",   "email": "jiang@email.com"},
  {name: "李小璐",  "email": "li@email.com"}
];
var emails = users.map(function (user) { return user.email; });
上一篇 下一篇

猜你喜欢

热点阅读