08-js数组相关
数组
forEach
js
const fruits = ['apple', 'banana', 'cherry'];
fruits.forEach((fruit, index) => {
console.log(`${index}: ${fruit}`);
});
// 输出:
// 0: apple
// 1: banana
// 2: cherry
数组去重
js
const arr = [1, 2, 2, 3, 4, 4];
const uniqueArr = Array.from(new Set(arr));
console.log(uniqueArr); // [1, 2, 3, 4]
数组排序
js
// sort方法有两个注意点:
//
// 会操作原始数组,经过操作后原始数组发生变化
// 默认排序按照字符编码排序,例如,我们有下面的一个例子:
var arr1 = [14,23,11,6,87,67];
arr1.sort(); // [11,14,23,6,67,87] 按字符而非数值排序
// 想要完成值比较排序,必须传入sort参数(函数)进行规制制定:
// 从小到大排序 [6, 11, 14, 23, 67, 87]
arr1.sort((a,b) => a - b );
提取字段成新数组
js
let b = arr.map(x => {return x.imgUrl})
对象
遍历对象
js
for (let key in obj) {
if (obj.hasOwnProperty(key)) {
console.log(key + ": " + obj[key]);
}
}
对象的键转换为数组
js
const a = { name: 'aa',age: '18' };
const arr = Object.keys(a);
console.log(arr); // 输出 [name, age]
将对象的值转换为数组
js
const a = { name: 'aa',age: '18' };
const arr = Object.values(a);
console.log(arr); // 输出 [aa, 18]
将对象的键值对转换为数组的元素
js
let a = {name: 'aa',age: '18'}
const arr = Object.entries(a).map(([key, value]) => [key, value]);
console.log(arr, 'arr'); // [["name","aa"],["age","18"]]