升序排序
var numbers = [4, 2, 5, 1, 3];
numbers.sort(function(a, b) {
return a - b;
});
console.log(numbers);
也可以写成:
var numbers = [4, 2, 5, 1, 3];
numbers.sort((a, b) => a - b);
console.log(numbers);
// [1, 2, 3, 4, 5]
降序排序 (将参数a,b调换位置即可)
numbers.sort(function(a, b) {
return b - a;
});
var items = [
{ name: 'Edward', value: 21 },
{ name: 'Sharpe', value: 37 },
{ name: 'And', value: 45 },
{ name: 'The', value: -12 },
{ name: 'Magnetic' },
{ name: 'Zeros', value: 37 }
];
// sort by value
items.sort(function (a, b) {
return (a.value - b.value)
});
// sort by name
items.sort(function(a, b) {
var nameA = a.name.toUpperCase(); // ignore upper and lowercase
var nameB = b.name.toUpperCase(); // ignore upper and lowercase
if (nameA < nameB) {
return -1;
}
if (nameA > nameB) {
return 1;
}
// names must be equal
return 0;
});
-
JavaScript中对象数组,如何给对象添加一个新属性
var a =[{name: 'Tom', age: 20},{name: 'Tom2', age: 22}]
现在给a数组中的第一个对象添加性别属性
a[0]['gender']='women'
a[0]['address']="China"
a[1].province="Jiangsu"
console.log(a);
//var a =[{name: 'Tom',age: 20, gender: 'women', address: "China"},
{name: 'Tom2', age: 22, province: "Jiangsu"}]
没有指定是数组中的第几个对象,直接对a数组符合,会如何?
a.haha=123
console.log(a);
此时数组长度还是2,内容变成
// var a =[{name: 'Tom',age: 20, gender: 'women', address: "China"},
{name: 'Tom2', age: 22, province: "Jiangsu"},
haha: 123]
而是用了一个push关键字呢,如下图,数组长度变成了3
a.push({name:'Jack'})
// var a =[{name: 'Tom',age: 20, gender: 'women', address: "China"},
{name: 'Tom2', age: 22, province: "Jiangsu"},
{name: Jack},
haha: 123]
如果希望删除Jack这个对象呢?
delete a[2]