首页 » 软件开发 » 10个编写更简洁的JavaScript代码的技巧(函数代码变量参数的是)

10个编写更简洁的JavaScript代码的技巧(函数代码变量参数的是)

萌界大人物 2024-07-24 08:04:26 0

扫一扫用手机浏览

文章目录 [+]

Javascript 是最常用的编程语言之一,超过 97% 的网站都在使用它。
近年来,随着许多框架的推出,涵盖了从后端、Web前端到跨平台移动应用程序,甚至游戏的方方面面,Javascript 的流行度达到了很高的水平。

编写干净可读的代码是构建业务逻辑之后最重要的事情之一。
根据我与多个组织、初创公司和项目合作的经验,我可以保证处理糟糕的代码是一场噩梦。
它减慢了开发过程,延迟了发布,并使用它的开发人员感到沮丧。

因此,我们需要编写一些干净可读的代码,在今天的内容中,我将与你分享一些我编程干净代码的基本技巧,希望对你有所帮助。

10个编写更简洁的JavaScript代码的技巧(函数代码变量参数的是) 软件开发
(图片来自网络侵删)

1.变量名——保持它们的意义

你的变量名称应该能够清楚地解释其用途。
此外,避免混淆首字母缩写词和难以发音的单词。
我不知道我该如何强调这一点, 让我们看看下面的例子:

// Bad const yyyymmdstr = moment().format("YYYY/MM/DD");// Goodconst currentDate = moment().format("YYYY/MM/DD");

2.变量名——保持可搜索

尽管有些文章会告诉你在可以使用单态形式时不要创建变量,但不应将其扩展为使用常量,这会使代码更难阅读和搜索。
此外,正确的做法是将它们存储在 const 变量中并使用 CONSTANT_CASE 来命名变量。

例如,查看以下代码段:

// What the heck is 86400000 for?setTimeout(blastOff, 86400000);// Declare them as capitalized named constants.const MILLISECONDS_PER_DAY = 60 60 24 1000; //86400000;setTimeout(blastOff, MILLISECONDS_PER_DAY);

3.避免对变量进行心理映射

最好在 array.forEach() 中显式命名变量,而不是使用以后可能没有意义的简写。

// BADconst locations = ["Austin", "New York", "San Francisco"];locations.forEach(l => { doStuff(); doSomeOtherStuff(); // ... // ... // ... // Wait, what is `l` for again? dispatch(l);});// GOODconst locations = ["Austin", "New York", "San Francisco"];locations.forEach(location => { doStuff(); doSomeOtherStuff(); // ... // ... // ... dispatch(location);});

4.避免不必要的上下文

如果类或对象名称已经告诉你它代表什么,请不要再次将该信息添加到你的变量名称中。
在下面的示例中,由于我们已经知道,我们谈论的是 Car 或 paintCar,因此你无需在变量中再次提及上下文的Car。

// BADconst Car = { carMake: "Honda", carModel: "Accord", carColor: "Blue"};function paintCar(car, color) { car.carColor = color;}// GOODconst Car = { make: "Honda", model: "Accord", color: "Blue"};function paintCar(car, color) { car.color = color;}

5.在你的函数中使用默认参数

避免在你的函数中使用短路或条件来保持更清洁。
更重要的是,请记住,你的函数只会为未定义的参数提供值, 默认值不会替换任何其他虚假值。

// BADfunction createMicrobrewery(name) { const breweryName = name || "Hipster Brew Co."; // ...}// GOODfunction createMicrobrewery(name = "Hipster Brew Co.") { // ...}

6.明智地使用函数参数

根据经验,尽量将函数参数的数量限制在 2 个或最多 3 个。
如果它需要这么多参数,则可能是你的函数做的太多了。
但是,如果仍然需要它,请使用 JavaScript 对象作为参数。
为了使函数期望的属性变得明显,可以使用 ES6 解构语法。

// BADfunction createMenu(title, body, buttonText, cancellable) { // ...}createMenu("Foo", "Bar", "Baz", true);// GOOD function createMenu({ title, body, buttonText, cancellable }) { // ...}createMenu({ title: "Foo", body: "Bar", buttonText: "Baz", cancellable: true});

7.函数应该做一件事

不要忘记函数的作用——为你的代码添加模块化。
每个只执行一项任务的较小函数将确保你的代码易于编写、测试和理解。
永远不要为单个功能设置多个目标。

// BADfunction emailClients(clients) { clients.forEach(client => { const clientRecord = database.lookup(client); if (clientRecord.isActive()) { email(client); } });}// GOOD function emailActiveClients(clients) { clients.filter(isActiveClient).forEach(email);}function isActiveClient(client) { const clientRecord = database.lookup(client); return clientRecord.isActive();}

8.函数名——让它们有意义

确保编写函数的名称清楚地说明函数的作用。
模棱两可的函数名称意味着读者必须查看函数定义和逻辑才能理解他们的工作。

// BADfunction addToDate(date, month) { // ...}const date = new Date();// It's hard to tell from the function name what is addedaddToDate(date, 1);// GOODfunction addMonthToDate(month, date) { // ...}const date = new Date();addMonthToDate(1, date);

9.避免重复代码——让代码更短更简洁

最痛苦的是多个代码部分中的一堆相同或相似的行。
我们都遇到过这样的场景。
这通常是因为某些逻辑在 2 个或更多地方的实现略有不同。
但是,想想如果有人在逻辑中发现错误会做的噩梦的,现在他们必须到处修改它。

10.不要使用标志作为函数参数

为什么需要标志作为函数参数?仅出于一个明显的原因,你的功能正在做多种事情。
从第 7 点开始,你就知道这是一种不好的做法。
所以,继续把你的功能一分为二。

// BADfunction createFile(name, temp) { if (temp) { fs.create(`./temp/${name}`); } else { fs.create(name); }}// GOODfunction createFile(name) { fs.create(name);}function createTempFile(name) { createFile(`./temp/${name}`);}

总结

以上就是我跟你分享的关于我编写干净代码的基本技巧,希望这10个基本技巧可以帮助到你,如果你觉得有用的话,请记得点赞我,关注我,并将其分享给你的朋友,也许能够帮助到他。

- End -

标签:

相关文章

语言中的借用,文化交融的桥梁

自古以来,人类社会的交流与发展离不开语言的传播。在漫长的历史长河中,各民族、各地区之间的文化相互碰撞、交融,产生了许多独特的语言现...

软件开发 2025-01-01 阅读1 评论0

机顶盒协议,守护数字生活的新卫士

随着科技的飞速发展,数字家庭逐渐走进千家万户。在这个时代,机顶盒成为了连接我们与丰富多彩的数字世界的重要桥梁。而机顶盒协议,作为保...

软件开发 2025-01-01 阅读1 评论0

语言基础在现代社会的重要性及方法步骤

语言是人类沟通的桥梁,是社会发展的基础。语言基础作为语言学习的基石,对于个人、社会乃至国家的发展具有重要意义。本文将从语言基础在现...

软件开发 2025-01-01 阅读2 评论0

粤语电影,传承文化,点亮时代之光

粤语电影,作为中国电影产业的一朵奇葩,以其独特的地域特色、丰富的文化内涵和鲜明的艺术风格,赢得了广大观众的喜爱。本文将从粤语电影的...

软件开发 2025-01-01 阅读3 评论0

苹果游戏语言,塑造未来娱乐体验的基石

随着科技的飞速发展,游戏产业逐渐成为全球娱乐市场的重要支柱。在我国,游戏产业更是蓬勃发展,吸引了无数玩家和投资者的目光。而在这其中...

软件开发 2025-01-01 阅读1 评论0