在日常的前端开发中,掌握一些 JavaScript 实用技巧可以让代码更加简洁和高效。今天分享几个我常用的技巧。
1. 数组去重
使用 Set 数据结构可以轻松实现数组去重:
1 2 3
| const array = [1, 2, 2, 3, 4, 4, 5]; const unique = [...new Set(array)]; console.log(unique);
|
2. 可选链操作符
避免深层属性访问时的错误:
1 2 3 4 5 6 7 8 9 10 11
| const user = { profile: { name: 'John' } };
const name = user && user.profile && user.profile.name;
const name2 = user?.profile?.name;
|
3. 空值合并操作符
提供默认值:
1 2 3 4 5
| const value = null ?? 'default'; console.log(value);
const value2 = 0 ?? 'default'; console.log(value2);
|
4. 数组快速转换为对象
1 2 3 4
| const fruits = ['apple', 'banana', 'orange']; const fruitObj = { ...fruits }; console.log(fruitObj);
|
5. 动态属性名
使用计算属性名:
1 2 3 4 5 6
| const key = 'name'; const user = { [key]: 'John', [`age_${key}`]: 30 }; console.log(user);
|
6. 条件赋值
1 2 3 4 5 6 7 8 9 10
| let value; if (condition) { value = 'yes'; } else { value = 'no'; }
const value = condition ? 'yes' : 'no';
|
7. 解构赋值
交换变量值:
1 2 3 4
| let a = 1; let b = 2; [a, b] = [b, a]; console.log(a, b);
|
8. 数组求和
1 2 3
| const numbers = [1, 2, 3, 4, 5]; const sum = numbers.reduce((acc, curr) => acc + curr, 0); console.log(sum);
|
9. 检查数组中的条件
1 2 3 4 5 6 7
| const numbers = [1, 2, 3, 4, 5];
const allPositive = numbers.every(n => n > 0);
const hasEven = numbers.some(n => n % 2 === 0);
|
10. 格式化 JSON
1 2
| const data = { name: 'John', age: 30 }; console.log(JSON.stringify(data, null, 2));
|
总结
这些技巧在日常开发中非常实用,可以让代码更加简洁易读。JavaScript 还有很多其他强大的特性,建议深入学习官方文档来掌握更多技巧。
你有什么常用的 JavaScript 技巧吗?欢迎在评论区分享!