前端记录项目中用到的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 的模板中,||?? 都可以用来提供一个默认值,但它们的行为略有不同。

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

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

因此:

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

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

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>
相关推荐
王维志1 分钟前
⏱ TimeSpan:C#时间间隔结构
前端·后端·c#·.net
阿幸软件杂货间9 分钟前
【最新版】Edge浏览器(官方版)安装包_Edge浏览器(官方版)安装教程
前端·edge
RaidenLiu18 分钟前
Flutter 状态管理:Provider 入门与实战
前端·flutter
隔壁老王z22 分钟前
设计实现一个Web 终端:基于 Vue 3 和 Xterm.js 的实践
前端·iterm
中微子23 分钟前
简单介绍跨域资源共享(CORS)
前端
極光未晚27 分钟前
Vue 项目 webpack 打包体积分析:从 “盲猜优化” 到 “精准瘦身”
前端·vue.js·性能优化
刘小筛33 分钟前
Ant Design Vue (2x) 按钮(button)单击后离开,按钮状态无变化
前端
mogullzr36 分钟前
4.1.ByteOJ用户模块——登录注册功能(RSA + TimeStamp加密过)
前端·后端
鹏多多.37 分钟前
flutter-使用AnimatedDefaultTextStyle实现文本动画
android·前端·css·flutter·ios·html5·web
卑微前端在线挨打1 小时前
2025数字马力一面面经(社)
前端