let filledArray = new Array(arraysize).fill(null).map(()=> ({'hello' : 'goodbye'}));
1
1
4.对象的动态属性
新手
let dynamic = "value";
let user = {
id: 1,
};
user[dynamic] = "other value";
1
2
3
4
5
1
2
3
4
5
老手
let dynamic = "value";
let user = {
id: 1,
[dynamic] : "other value"
};
1
2
3
4
5
1
2
3
4
5
5.删除重复项
新手
let array = [100, 23, 23, 23, 23, 67, 45];
let outputArray = [];
let flag = false;
for (j = 0; < array.length; j++) {
for (k = 0; k < outputArray.length; k++) {
if (array[j] == outputArray[k]) {
flag = true;
}
}
if (flag == false) {
outputArray.push(array[j]);
}
flag = false;
}
// tArray = [100, 23, 67, 45]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
老手
let array = [100, 23, 23, 23, 23, 67, 45];
let outputArray = Array.from(new Set(array))
1
2
1
2
6. 数组到对象
新手
let arr = ["value1", "value2", "value3"];
let arrObject = {};
for (let i = 0; i < arr.length; ++i) {
if (arr[i] !== undefined) {
arrObject[i] = arr[i];
}
}
1
2
3
4
5
6
7
1
2
3
4
5
6
7
老手
let arr = ["value1", "value2", "value3"];
let arrObject = {...arr};
1
2
1
2
7.对象到数组
新手
let number = {
one: 1,
two: 2,
};
let keys = [];
for (let numbers in numbers) {
if (number.hasOwnProperty(number)) {
keys.push(number);
}
}
// key = [ 'one', 'two' ]
1
2
3
4
5
6
7
8
9
10
11
1
2
3
4
5
6
7
8
9
10
11
老手
let number = {
one: 1,
two: 2,
};
let key = Object.keys(numbers); // key = [ 'one', 'two' ]
let value = Object.values(numbers); // value = [ 1, 2 ]
let entry = Object.entries(numbers); // entry = [['one' : 1], ['two' : 2]]
1
2
3
4
5
6
7
1
2
3
4
5
6
7
8. 短路条件
新手
if (docs) {
goToDocs();
}
1
2
3
1
2
3
老手
docs && goToDocs()
1
1
9. 使用
^
检查数字是否相等
if(a!=123) // before // 一般开发者
if(a^123) // after // B格比较高的