今天我们将讨论一些 JavaScript 的酷技巧。这些不仅仅是随机的代码黑客攻击——它们是真正的解决方案,可以认真清理您的编程。
1. 对象属性简写
还记得我们写出每个属性的老式 javascript 时代吗?
const name = 'sarah'; const age = 28; const user = { name: name, age: age };
这里有一个更好的方法:
const user = { name, age };
那些需要重复的笨拙台词已经一去不复返了。
2. 在没有临时变量的情况下交换变量
需要交换两个变量?使用这个:
[a, b] = [b, a];
第一次看到这个,你一定会多看几眼。数组解构将变量交换变成了看起来好得令人难以置信的东西。没有临时变量,没有复杂的逻辑——只有纯粹、优雅的代码。
3. 空合并运算符:你的新好朋友
还记得编写那些冗长的默认值检查吗?
const userpreference = input !== NULL && input !== undefined ? input : 'default';
现在酷孩子们是这样做的:
const userpreference = input ?? 'default';
这个小??操作员让我摆脱了很多头痛。仅当值为 null 或未定义时,它才会回退到默认值 – 而不是当它为 0 或空字符串时。
4.终极阵列重复数据删除
如果你想让你的数组独一无二,请执行以下操作:
const unique = [...new set(array)];
如果是在我们使用循环之前,但现在我只是微笑着并在需要时传播该集合。
5. 像老板一样转换为布尔值
而不是写 value === true 或 Boolean(value)。
这里有一个更好的方法:
const istrue = !!value;
那些双感叹号可能看起来你对某件事真的很兴奋,但它们实际上是在做一些聪明的类型强制。
6. 真正有意义的快速数字转换
如果要将字符串转换为数字?暂时忘记 parseint() 吧,使用这个:
const number = +'42';
那个孤独的加号在这里完成了所有繁重的工作,它准确地将字符串数字转换为数字。
7. 平滑算子(可选链)
不要再这样做:
const usercity = user && user.address && user.address.city;
更好的方法:
const userCity = user?.address?.city;
这感觉就像 javascript 终于理解了我们的痛苦并决定对此做点什么。
底线
编码快捷键不仅仅意味着更少的击键次数。
它们是关于编写更智能、更有目的性的软件。这些技术将普通开发人员与优秀编码人员区分开来。明智、谨慎、有目的地使用它们。
伟大的代码会讲述一个故事。它应该清晰、有力、优雅。不要只追求简洁 – 追求理解。
就这些了,现在告诉我你最喜欢的 javascript 技巧是什么?
与我分享,即使您在阅读本文之前就已经知道了。