JavaScript变量名和函数名命名规则和命名规范:起个「好记又合法」的名字有多重要?

JavaScript变量名和函数名命名规则和命名规范:起个「好记又合法」的名字有多重要?

你有没有在看别人写的JavaScript代码时,对着满屏的 abfn1 这样的名字抓耳挠腮?或者自己写代码时随便起了个名字,过两天回头看完全想不起这变量是干啥用的?

其实,给变量和函数起名字不是「随便取」,而是一门需要认真对待的「技术活」。好的名字能让代码像「自说明书」一样,一看就懂;差的名字则会让代码变成「密码本」,连自己都破译不了。

今天我们就来聊聊JavaScript中变量名和函数名的命名规则命名规范,帮你写出让人眼前一亮的代码。


一、先搞懂:哪些名字是「法律不允许」的?

在JavaScript里,给变量或函数起名字就像给新生儿上户口——有些规则是「硬性规定」,违反了代码直接报错。我们先把这些「红线」列出来:

1. 名字里只能有这些字符

合法的变量名/函数名可以包含:

  • 字母(a-z,A-Z,不区分大小写但区分具体字母,比如 ageAge 是不同的)
  • 数字(0-9)
  • 下划线(_)和美元符号($

注意:数字不能放在名字的最开头!比如 123user$2024price 是合法的,但 user123 合法,123user 不合法(会被浏览器报错「无效标识符」)。

2. 绝对不能和「保留字」重复

JavaScript有一批「内置关键词」,它们是语言本身的功能指令(比如 var 用来声明变量,function 用来定义函数,if 用来做条件判断)。这些词就像「注册商标」,你不能用它们来当变量名或函数名。

举个反例:

var var = 10; // 报错!var是保留字,不能当变量名
function function() { ... } // 报错!function也是保留字

常见的保留字包括:varletconstfunctionifelseforwhilereturntruefalsenullundefined 等等(具体可以查MDN文档,但记住「别用语言本身的功能词」这个原则就行)。

3. 区分大小写

JavaScript是「大小写敏感」的语言。比如 userNameUsername 会被视为两个完全不同的变量。

举个例子:

let age = 20;
let Age = 25;
console.log(age); // 输出20(和Age没关系)

所以起名字时要注意大小写的一致性,避免自己混淆。


二、再聊聊:什么样的名字是「大家喜欢」的?

满足了「法律要求」只是基础,真正优秀的名字能让代码「会说话」。这里有几个被前端圈广泛认可的「命名规范」,新手直接照着做就对了。

1. 用「有意义的词」,拒绝「无意义的符号」

变量名和函数名应该像「标签」一样,直接说明它的用途。

反面案例

let a = 18; // a是啥?年龄?身高?完全看不懂
let fn = function() { ... }; // fn是function的缩写,但具体功能呢?

正面案例

let userAge = 18; // 直接说明这是「用户年龄」
let calculateTotalPrice = function() { ... }; // 直接说明这是「计算总价」的函数

哪怕名字长一点,也比让人猜强。比如 studentScoreList(学生分数列表)比 slist 好一万倍。

2. 动词 vs 名词:函数名用「动作」,变量名用「事物」

这是个被广泛接受的「潜规则」:

  • 变量名:通常代表「一个东西/数据」,所以用名词(或名词短语)。比如 userName(用户名)、productList(商品列表)。
  • 函数名:通常代表「一个动作/操作」,所以用动词(或动词短语)。比如 getUser()(获取用户)、calculateSum()(计算总和)。

这样一看名字,就能快速判断它是「存数据的容器」还是「干活的工具」。

3. 驼峰命名法:让名字更「连贯」

JavaScript中最常用的命名格式是「驼峰命名法」,分为两种:

小驼峰(变量/函数名首选)

第一个单词首字母小写,后面每个单词的首字母大写,中间没有空格。比如:

  • 变量名:studentName(学生姓名)、orderTime(下单时间)
  • 函数名:getUserName()(获取用户名)、filterProductList()(过滤商品列表)

大驼峰(构造函数/类名首选)

每个单词的首字母都大写,通常用于定义构造函数(后续学类的时候会用到)。比如:

  • function Person(name) { ... }(表示「人」的类)
  • class Animal { ... }(表示「动物」的类)

为什么用驼峰? 因为它比下划线(比如 user_name)更简洁,比全连写(比如 username)更易读,是前端圈的「通用语言」。

4. 避免缩写,除非「地球人都知道」

新手最容易犯的错误是过度缩写,比如把 total 写成 tot,把 message 写成 msg。虽然代码长度变短了,但可读性会大幅下降。

例外情况:如果某个缩写是行业公认的(比如 id 代表「唯一标识」,url 代表「统一资源定位符」),可以放心用。但像 usr(用户)、prdt(产品)这种不常见的缩写,尽量避免。


三、总结:好名字的核心就一句话

变量名和函数名的命名规则可以总结为:
合法是底线(不违反语法规则),清晰是王道(让别人一眼看懂)。

下次写代码时,不妨多花3秒钟想想:「如果三个月后我再看到这个名字,还能立刻知道它是干啥的吗?」—— 养成这个习惯,你的代码会越来越「专业」。

毕竟,代码写出来是给人看的,偶尔是给机器执行的。好的名字,是对自己和团队最大的负责。


希望这篇文章能帮你理清变量名和函数名的命名逻辑。如果还有其他疑问(比如「能不能用中文命名?」),欢迎在评论区留言讨论~

💬 评论

加载中...