前端记录项目中用到的js

1.new Map的用法

核心作用是:快速、方便地"以某个唯一字段为键"查找对应值

嵌套循环 forEach + find,效率高得多。

用 drugCode 做键,把 useDosage 存进去",这样后面可以通过 drugCode 快速查找 useDosage

复制代码
let dosageMap = new Map(list.map(item => [item.drugCode, item.useDosage]));

例子:

{ drugCode: 'A1', useDosage: 2 }, { drugCode: 'B2', useDosage: 5 }, { drugCode: 'C3', useDosage: 3 },

转成map之后:

dosageMap = Map {

'A1' => 2,

'B2' => 5,

'C3' => 3

}

dosageMap.get('B2') // 返回 5

2. || 和 ??

{{ scope.row.operatorName || '-' }} {{ scope.row.operatorName ?? '-' }} 用 || 和??的区别


在 Vue.js 的模板中,|| 和 ?? 都可以用来提供一个默认值,但它们的行为略有不同。

  • || 运算符是 逻辑或 运算符,它会在左侧的值为"假值"(例如 null、undefined、0、false、NaN 或 "")时,返回右侧的默认值。所以,如果 scope.row.operatorName 是任何一个假值,它都会展示 "-"。

  • ?? 运算符是 空值合并 运算符,它只会在左侧的值为 null 或 undefined 时,返回右侧的默认值。与 || 不同,?? 不会对 0、false 或空字符串("")等假值做处理。

因此:

  • {``{ scope.row.operatorName || '-' }} 会在 operatorName 为 null、undefined、""、0、false 等时,展示 "-"。
  • {``{ scope.row.operatorName ?? '-' }} 会仅在 operatorName 为 null 或 undefined 时,展示 "-",而 0、false、"" 都会保留原值。

总结:?? 更严格,只会对 null 和 undefined 做默认值处理,而 || 对所有"假值"都会处理。

3.字符之间的距离:letter-spacing

麻醉者为了和上下四个字的对齐

复制代码
<span class="label">麻&nbsp;&nbsp;&nbsp;&nbsp;醉&nbsp;&nbsp;&nbsp;&nbsp;者:&nbsp;&nbsp;&nbsp;&nbsp;</span>
//现在改为
<span class="label" style="letter-spacing: 8px;">麻醉者:</span>
相关推荐
子兮曰3 天前
jev-ultrafast 深度解析:7 秒订机票的浏览器 Agent 是如何炼成的
前端·后端·agent
子兮曰3 天前
Jev 爆发一周:7 秒 Agent 背后的 System One 生态与三场争议
前端·后端·ai编程
前端小万3 天前
写公众号赚了 3000 块后,我做了一款叫 "一键成稿" 的软件
前端·微信小程序
爱勇宝3 天前
ZCode 开源 24 小时:一份没有历史的账本,回答不了"有没有偷代码"
前端·后端·chatglm (智谱)
三十而立洋3 天前
Cookie 详解:从产生到安全,一次讲透
前端·javascript
卡布鲁3 天前
把一个 Vite + Vue3 应用塞进 qiankun (React + Umi3) 主站:十个坑的复盘
前端·javascript·react.js
汉堡大王95273 天前
Jev:不是聊天机器人, 而是一个智能 if 语句
前端·人工智能·后端
梦想很大很大3 天前
从运行事实到回归证据:Workrun 的 Telemetry 与 Evaluation 实践
前端·人工智能·后端
计算机魔术师3 天前
Meta Muse agent 接入 Shopify 的 Shop Pay 实现代理式购物
前端
沙蒿同学3 天前
我用 Go 搭了一条 AI Agent 流水线:从 1 张商品图到一整套淘宝详情页
前端·javascript·后端