登录
已读 0%
编程IDEAS & NOTES

JavaScript不写分号带来的一个问题

今天在写一段代码,由于自己写js很少手动加分号,通常会使用prettier自动化格式化,在使用prettier格式化时导致两行代码合并成了一行,从而运行这段代码报错。

有问题的写法

function shuffle(arr) { let m = arr.length while (m > 1) { let index = parseInt(Math.random() * m--) [arr[index], arr[m]] = [arr[m], arr[index]] } return arr; }

格式化后

function shuffle(arr) { let m = arr.length; while (m > 1) { // 很明显这行代码错误了 let index = (parseInt(Math.random() * m--)[(arr[index], arr[m])] = [ arr[m], arr[index] ]); } return arr; }

解决办法

1、在let index = parseInt(Math.random() * m--)后加上; 2、使用{}包住函数块

function shuffle(arr) { let m = arr.length while (m > 1) { let index = parseInt(Math.random() * m--) { [arr[index], arr[m]] = [arr[m], arr[index]] } } return arr; }

读到这里,感谢你的时间。

把这篇文章,分享给同样好奇的人。

由 helti 发布 · 本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。

KEEP EXPLORING
全部文章

编程

uni-app + Vue 3 微信小程序开发入门指南

2026.07.27558 次阅读

编程

在 Linux 系统中如何使用 yum 安装 nginx?

2024.09.251,547 次阅读

编程

把服务器迁移到阿里云了

2021.09.2216,713 次阅读