今天我们将讨论一些 javascript 的酷技巧。这些不仅仅是随机的代码黑客攻击——它们是真正的解决方案,可以认真清理您的编程。
还记得我们写出每个属性的老式 javascript 时代吗?
const name = 'sarah'; const age = 28; const user = { name: name, age: age };
这里有一个更好的方法:
const user = { name, age };
那些需要重复的笨拙台词已经一去不复返了。
需要交换两个变量?使用这个:
[a, b] = [b, a];
第一次看到这个,你一定会多看几眼。数组解构将变量交换变成了看起来好得令人难以置信的东西。没有临时变量,没有复杂的逻辑——只有纯粹、优雅的代码。
还记得编写那些冗长的默认值检查吗?
const userpreference = input !== null && input !== undefined ? input : 'default';
现在酷孩子们是这样做的:
const userpreference = input ?? 'default';
这个小??操作员让我摆脱了很多头痛。仅当值为 null 或未定义时,它才会回退到默认值 - 而不是当它为 0 或空字符串时。
如果你想让你的数组独一无二,请执行以下操作:
const unique = [...new set(array)];
如果是在我们使用循环之前,但现在我只是微笑着并在需要时传播该集合。
而不是写 value === true 或 boolean(value)。
这里有一个更好的方法:
const istrue = !!value;
那些双感叹号可能看起来你对某件事真的很兴奋,但它们实际上是在做一些聪明的类型强制。
如果要将字符串转换为数字?暂时忘记 parseint() 吧,使用这个:
const number = +'42';
那个孤独的加号在这里完成了所有繁重的工作,它准确地将字符串数字转换为数字。
不要再这样做:
const usercity = user && user.address && user.address.city;
更好的方法:
const userCity = user?.address?.city;
这感觉就像 javascript 终于理解了我们的痛苦并决定对此做点什么。
编码快捷键不仅仅意味着更少的击键次数。
它们是关于编写更智能、更有目的性的软件。这些技术将普通开发人员与优秀编码人员区分开来。明智、谨慎、有目的地使用它们。
伟大的代码会讲述一个故事。它应该清晰、有力、优雅。不要只追求简洁 - 追求理解。
就这些了,现在告诉我你最喜欢的 javascript 技巧是什么?
与我分享,即使您在阅读本文之前就已经知道了。
Vue3 computed属性导致栈溢出:如何排查和解决minDate和maxDate计算属性的无限循环问题?
承诺解决了
掌握JavaScript中的数组方法:map、filter和reduce
构建您的第一个 WebAssembly 项目
页面关闭时Ajax请求失效:如何处理?
在计算机领域中,“pattern”这个词通常翻译为“模式”。这个词在不同的上下文中有不同的具体含义,例如在设计模式(design patterns)中,它指的是解决特定设计问题的可重用解决方案;在模式识别(pattern recognition)中,它指的是数据中的规律或结构。在编程和算法中,“pattern”也常用于描述字符串匹配或正则表达式中的模式。