
在本文中,我们将探讨如何在尝试访问可能未定义或 null 的数据时防止错误,并且我们将了解在以下情况下可用于有效管理数据的方法:必要的。
通过可选链接进行安全访问
在 javascript 中,当尝试访问嵌套对象中的值或函数时,如果结果为 undefined,您的代码可能会抛出错误。此错误可能会停止代码的执行。但是,如果您使用可选链接运算符,如果值或函数不存在,它将返回 undefined 而不是抛出错误。 这可以防止您的代码崩溃。
示例 :
const person = { name: 'john', address: { city: 'new york' }};console.log(person.address?.city); // 'new york'console.log(person.address?.country); // undefined, no error
空值合并
如果变量的值为null或undefined,为了避免这种情况,可以使用nullish coalescing运算符
示例 :
function getconfig(config) { return config ?? { timeout: 1000, retries: 3 };}let userconfig = null;let finalconfig = getconfig(userconfig); // { timeout: 1000, retries: 3 } console.log(finalconfig);
使用 set 和 weakset 管理重复项
使用 set 删除重复项 :
立即学习“Java免费学习笔记(深入)”;
万知
万知: 你的个人AI工作站
38 查看详情
对于具有重复值的数组,您可以使用 set 删除
重复值
示例 :
const letter= ["a", "b", "c" , "c" , "a" , "d" ,"d" ,];const result= [...new set(letter)];console.log(result) => ["a", "b" , "c" , "d"]
使用 weakset 防止重复 :
由于 weakset 保存对对象 的引用,因此对象只能添加到 weakset 一次。
示例 :
// Creating a WeakSetconst weakset = new WeakSet();// Defining objectsconst personJane = { name: 'jane' };const personMike = { name: 'mike' };// Adding objects to the WeakSetweakset.add(personJane);weakset.add(personMike);console.log(weakset.has(obj1)); // trueconsole.log(weakset.has(obj2)); // true// Attempting to add the same object againweakset.add(obj1); // obj1 is already present, won't be added againconsole.log(weakset.has(obj1)); // trueconsole.log(weakset.has(obj2)); // true// Removing an object from the WeakSetweakset.delete(obj1);console.log(weakset.has(obj1)); // false// Adding the object againweakset.add(obj1);console.log(weakset.has(obj1)); // true
结论
在本文中,我们探讨了一些重要概念,这些概念可以帮助防止在访问可能未定义或为 null 的值时发生错误,以及在必要时更有效地管理数据的方法.
以上就是你应该知道的 Javascript 特性的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/437714.html
微信扫一扫
支付宝扫一扫