JavaScript 命名约定:变量和函数命名指南

javascript 命名约定:变量和函数命名指南

javascript 中的命名约定对于编写干净、可读和可维护的代码至关重要。无论您是在处理个人项目还是与团队协作,一致且有意义的名称都可以提高代码质量、提高调试效率并减少引入错误的机会。

1。使用描述性且有意义的名称

javascript 中的名称应该清晰且具有描述性,以便其他人轻松理解代码所代表的含义。避免使用简短、不明确的名称,例如 x 或 y,除非它们用于特定的小型上下文(例如循环计数器)。相反,选择描述变量或函数的目的或内容的名称。

不好的例子:

let x = 10; // it's unclear what 'x' represents 

登录后复制

好例子:

let userage = 10; // clearly indicates that the variable holds a user's age

登录后复制

这条规则也适用于函数。始终为您的函数提供反映其操作的名称。

立即学习“Java免费学习笔记(深入)”;

示例:

function calculatetotal(price, tax) { return price + tax; } 

登录后复制

在上面的示例中,函数名称calculatetotal清楚地表明了其目的——根据价格和税金等输入计算总计。

2。对变量和函数使用驼峰命名法

javascript 遵循使用驼峰式命名变量和函数的约定。在驼峰命名法中,第一个单词的首字母小写,而后续每个单词的首字母大写。

示例:

let username = "john doe"; // variable using camelcase function getuserprofile() { // function name follows camelcase  return database.fetchuser(); } 

登录后复制

使用驼峰命名法使变量和函数名称统一且更易于阅读。此约定也常用于 javascript 的内置函数。

3。使用 pascalcase 命名类

类和构造函数应使用 pascalcase,其中每个单词的第一个字母大写。这种命名约定有助于区分类与常规函数和变量。

示例:

class userprofile {   constructor(name, age) {     this.name = name;      this.age = age;    } } let user = new userprofile("alice", 25); 

登录后复制

pascalcase 也用于一些框架和库中来命名组件(例如,react 组件)。

4。对常量使用 upper_snake_case

常量应以 upper_snake_case 书写,其中所有字母均大写,单词之间用下划线分隔。这表明常量的值在整个程序中不应改变。

示例:

const max_login_attempts = 5; const api_url = "https://api.example.com"; 

登录后复制

通过对常量使用 upper_snake_case,您可以让其他开发人员更轻松地识别代码中重要的、不变的值。

5。布尔变量应该使用前缀,例如 is、has 或 should

命名布尔变量时,使用 is、has 或 should 等前缀来指示该值代表真/假条件。这提高了条件语句和布尔逻辑的清晰度。

示例:

let isloggedin = true; let hasaccess = false; let shoulddisplaywarning = false; 

登录后复制

通过采用此约定,您的代码变得不言自明,并且布尔变量的意图很明确。

6。避免保留关键字

javascript 有一系列不能用作变量或函数名称的保留关键字,例如 let、class、function、const 和 return。使用这些保留字将导致语法错误。

示例:

//bad: using 'class' as a variable name will cause an error let class = "math"; // syntax error // good: use descriptive names instead let subjectclass = "math";

登录后复制

始终仔细检查您选择的名称是否不是保留关键字,以避免代码中出现意外问题。

7。使用动词-名词对作为函数名称

函数名称通常应以动词开头,以指示它们执行的操作。如果合适,将动词与名词结合起来以进一步描述函数的目的(例如,getuserdata、setusername)。

示例:

 function getuserdata() {    // code to fetch user data } function setuserprofile(profile) {    // code to update user profile }

登录后复制

这种做法可以让每个函数的意图立即清晰,从而增强代码的可读性。

8。避免使用单字母变量名(循环计数器除外)

使用单字母名称(如 x 或 y)的唯一例外是当您在小代码块中使用循环计数器或临时变量的短名称时。

for (let i = 0; i < 10; i++) {    console.log(i); // using 'i' as a loop counter }

登录后复制

虽然短名称在小型、独立的上下文(例如循环)中是可以接受的,但在通用代码中更喜欢更具描述性的名称。

9。避免使用幻数和字符串

“幻数”或“幻字符串”是缺乏上下文或解释的硬编码值。避免直接在代码中使用它们。相反,请将它们存储在命名良好的常量中以提供清晰的说明。

不好的例子:

if (userage > 18) {    // what does 18 represent? }

登录后复制

好例子:

const minimum_age = 18; if (userage > minimum_age) {   // the meaning of '18' is now clear } 

登录后复制

通过将这些值分配给描述性常量,您的代码将变得更易于理解且更易于维护。

10。在您的代码库中保持一致

一致性是任何编程语言的关键。在整个代码库中坚持相同的命名约定,使您的代码更可预测且更易于理解。例如,如果您对变量和函数名称使用驼峰命名法,请避免对相同类型的元素混合使用蛇形命名法或帕斯卡命名法。

不好的例子:

let user_profile = {}; // using snake_case for variable names let userprofile = {}; // mixing camelcase and snake_case 

登录后复制

好例子:

 let userprofile = {}; // consistently using camelcase

登录后复制

在整个项目中保持一致的命名可以使您的代码库更干净,并且对于任何使用它的人来说都更易于导航。

11。文件和目录命名(kebab-case)

文件名应该具有描述性,并使用短横线命名(小写字母,单词之间用连字符分隔)以提高可读性,特别是在处理较大的项目或框架时。这使得文件名易于阅读,并避免了不区分大小写的文件系统(如 windows 中)的问题。
示例:

user-profile.js app-config.js

登录后复制

这样可以更轻松地一目了然地了解文件的用途,并且使用 kebab-case 可以避免不区分大小写的文件系统的问题。

12。使用异步函数的命名约定

处理异步函数或 promise 时,请在函数名称中明确指出该函数是异步的。例如,在异步函数前面加上 fetch、load 或 getasync 可以向其他开发人员表明该函数涉及异步操作。

示例:

async function fetchuserdata() {   const response = await fetch("/api/user");   return response.json(); }

登录后复制

这清楚地表明该函数包含异步行为,从而减少任何阅读或使用您的代码的人的困惑。

13。私有属性和方法:

使用下划线 (_) 作为私有属性和方法的前缀,尽管现代 javascript 也支持使用 # 作为私有字段。这意味着这些字段或方法不应该在类外部直接访问。

示例:

class user {   constructor(name) {   this._name = name; // private property  } _logname() {   console.log(this._name); // private method   } }

登录后复制

14。命名空间:

对于大型项目,使用命名空间对相关函数或变量进行分组。这可以防止名称冲突并更好地组织代码。

示例:

const UserUtils = {   getUserFullName(user) {      return `${user.firstName} ${user.lastName}`;   }  };

登录后复制

完整文章在这里:

以上就是JavaScript 命名约定:变量和函数命名指南的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2664263.html

(0)
上一篇 2025年3月7日 11:36:23
下一篇 2025年3月7日 11:36:29

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • 理解 JavaScript 对象和函数中的“this”

    js 对象作用域中的 this 关键字 在 javascript 中,了解 this 关键字的内容、方式和位置可能是编写实际有效的代码和在编码时抓狂的区别。 这个关键字 在javascript中,这是一个关键字(保留字),也就是说,它不能用…

    2025年3月7日
    200
  • 使用 AWS SES 发送电子邮件:综合指南

    aws simple email service (ses) 是一种功能强大、经济高效的解决方案,可以帮助您安全地发送电子邮件,无论是用于交易消息、营销活动还是自动通知。 在这篇博文中,我们将探讨如何使用 aws ses 发送电子邮件,涵盖…

    2025年3月7日
    200
  • 代理设计模式

    在我之前的博客中,我探索了各种处理对象创建机制的创作设计模式。现在,是时候深入研究结构设计模式,它重点关注如何组合对象和类以形成更大的结构,同时保持它们的灵活性和高效性。让我们从代理设计模式开始 javascript 中的代理设计模式 代理…

    2025年3月7日
    200
  • 使用 React 构建租赁物业管理平台

    movin’ in 是一个面向代理的租赁物业管理平台,具有用于管理物业、客户和预订的后端、用于租赁物业的前端和移动应用程序。 通过以下解决方案,您可以通过将其托管在具有至少 1GB RAM 的 Docker Droplet 上,…

    2025年3月7日
    200
  • 用于高效代码管理的 React 工具集

    简介 本文档概述了使用一组精选的工具和最佳实践来构建和管理 react 应用程序的综合方法。通过遵守这些准则,您可以创建可扩展、可维护且高效的应用程序。 状态管理 祖斯坦: 目的:提供一种简单且高性能的方法来管理全局应用程序状态。好处:清晰…

    2025年3月7日
    200
  • Nodejs v 发布:终止对 Windows 位的支持

    2024 年 10 月 16 日,随着 node.js v23.0.0 的发布,node.js 社区达到了一个重要的里程碑。这个最新版本引入了多项改进和新功能,但也带来了一个重要的变化:node.js 将不再支持 32 位 windows。…

    2025年3月7日
    200
  • GitHub Actions 和 CI/CD 管道

    当然!以下是与 github actions 和 ci/cd 管道相关的关键概念和实践的全面摘要,以及我们讨论的示例: github actions 和 ci/cd 管道的关键概念 持续集成(ci): ci 涉及自动构建和测试代码更改,以确…

    2025年3月7日
    200
  • JavaScript JSSSugar 提案、Nodejs Nextjs RCnd 更多

    欢迎来到本周的“本周 JavaScript”! 我们为您提供了一系列令人兴奋的更新,包括关于拆分 JavaScript 的有争议的提案、最新的 Node.js 版本、一些杀手级工具等等。所以系好安全带,让我们开始吧! JavaScript …

    2025年3月7日
    200
  • js如何调用硬件驱动

    在 JavaScript 中调用硬件驱动有两种方式:操作系统提供的 API(如 DirectX、IOCTL),允许 JavaScript 代码访问硬件设备。浏览器提供的 Web API(如 Web Audio API、Web MIDI AP…

    2025年3月7日
    200
  • js如何调用键盘

    JavaScript 提供多种方式使用键盘输入:1. 事件监听器(keydown、keypress、keyup);2. KeyboardEvent 对象(包括键值、代码、修饰键详情);3. Keyboard.prototype(添加/移除监…

    2025年3月7日
    200

发表回复

登录后才能评论