首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >shenyu的rule表单handler填写问题

shenyu的rule表单handler填写问题

作者头像
阿超
发布2025-01-15 09:22:01
发布2025-01-15 09:22:01
2030
举报
文章被收录于专栏:快乐阿超快乐阿超

你凭什么以为你十年寒窗,抵得过我三代从商。——盛田昭

主要是这个pr:

https://github.com/apache/shenyu-dashboard/pull/518

发现原来是JSON.parse的时候,由于handlerundefined导致报错

改为

1

JSON.parse(handle ?? "{}"),

JSON.parse(handle ?? "{}") 这个表达式涉及到了两部分的知识点:空值合并操作符(??)和JSON.parse()

  1. 空值合并操作符(??
    • 空值合并操作符(nullish coalescing operator)??用于判断一个值是否为nullundefined,如果是,则返回右边的值。如果左边的值不是nullundefined,则返回左边的值。
    • 在这个表达式中,handle ?? "{}"的作用是:如果handle的值是nullundefined,就返回"{}",否则返回handle的值。
  2. JSON.parse()
    • JSON.parse()是一个用于将JSON格式的字符串转换成JavaScript对象的方法。在这里,handle ?? "{}"返回一个JSON字符串,JSON.parse()将其解析成JavaScript对象。
    • 如果handlenullundefined,最终会解析一个空对象{},否则会解析handle的内容。

举个例子:

123

let handle = '{"name": "John", "age": 30}';let parsedData = JSON.parse(handle ?? "{}");console.log(parsedData); // 输出 { name: 'John', age: 30 }

如果handlenullundefined,则会解析成一个空对象:

123

let handle = null;let parsedData = JSON.parse(handle ?? "{}");console.log(parsedData); // 输出 {}

简而言之,JSON.parse(handle ?? "{}")的目的是:确保handle不是nullundefined,否则使用一个空对象字符串"{}"作为备选值进行解析。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2025-01-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 举个例子:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档