当前位置: 首页 > 知识库问答 >
问题:

javascript - js变量命名的选择??

宿淳
2023-08-08

在c/c++里面定义名称
变量最好是下划线,比如 dog_name
函数最好是驼峰,比如getDogName

在js里面我读了很多的帖子和指导说明,都说js里面的变量定义不管是变量还是函数,都是要用驼峰。

我个人感觉,c/c++的这种能够区分变量和函数的命名方法更具有可读性。

那么请问各位大佬,为什么在js里面不推荐用下划线,而是统一用驼峰命名?感谢。

共有4个答案

顾骏祥
2023-08-08

首先 我觉得首选eslint规范 然后给你看下我公司的前端开发规范

1、常量的话规定全字母大写
2、项目命名规范:采用小写方式, 以中划线分隔,例如:adsaas-source
3、目录命名规范:采用小写方式, 以中划线分隔,有复数结构时,要采用复数命名法, 缩写不用复数,例如:config、styles、components、images、service、views、common-docs
4、页面模块命名规范:语义化小驼峰形式,避免拼音加英文混搭,贴近模块化方式,可整目录移动复用,例如:userCenterModule、authModule
5、文件创建规范:语义化或者小驼峰命名,不建议用连接符,避免作自动时无法解析文件,例如:login.vue、index.vue、userInfo.vue
、、、、、、、、、、、、、、、、、、、、、
还有css规范 OP说的是js规范 所以css的就不写了

慕弘深
2023-08-08

一般来说按照当前项目的Lint规范来命名,每个人/每个团队的开发习惯都是不一样的。所以并没有一个限制的很死的规则作为唯一标准。甚至还有很多人因为缩进是两个空格还是四个空格争吵起来。

以至于使用驼峰而不是下划线,可能是因为偷懒的关系。但很多常量在声明的时候还是使用下划线来分割的。

易俊远
2023-08-08

历史原因JS最早是受到Java的影响几天就写出来的,还有内置的一些内置的对象和函数都是用驼峰命名法的Array.prototype.map,document.getElementById,为了保持一样吧,dogName比dog_name更易读吧没下划线,你觉得易读,可能你的个人习惯用多了c++

彭宏深
2023-08-08

在JS中,常见的开发规范如下:
常量(大写字母+下划线):DOG_NAME
变量(驼峰):dogName
函数(动词开头+驼峰):getDogName
函数一般是动词开头,相对而言就还好分辨。当然,你也可以用ESLint去定义自己喜欢的开发规范,都是OK的。

 类似资料:
  • 本文向大家介绍JavaScript 销毁时重命名变量,包括了JavaScript 销毁时重命名变量的使用技巧和注意事项,需要的朋友参考一下 示例 解构允许我们引用一个对象中的一个键,但是将其声明为具有不同名称的变量。该语法看起来像普通JavaScript对象的键值语法。            

  • 问题内容: 我有一个JavaScript变量,其中包含JavaScript函数的名称。通过使用$ .ajax等加载并放置在页面上,此功能存在于页面上。 谁能告诉我如何调用变量中命名的javascript函数? 该函数的名称位于变量中,因为用于加载页面片段(将其插入到当前页面中)的URL包含要调用的函数的名称。 我愿意就如何实施此解决方案提出其他建议。 问题答案: 我会避免评估。 要解决此问题,您应

  • 问题内容: 我正在尝试遍历数组,并为for循环分配变量。所以像这样: 我遇到的问题是名称没有进入成功功能。我以为js会继续向上查找该变量,如果它在当前作用域中不存在?如果尝试console.log name,我将无法为name变量定义!示波器大师我在做什么错? 问题答案: 您可以使用,以保持范围。此外,改变阵列的具有属性的对象,其中值是一个数组,以防止可能出现的冲突的对象。 请注意,您也可以连接在

  • 代码如下: 为什么第一个log打印是 undefined 而不是 1?那个全局的 a 应该在这里生效的才对啊

  • 问题内容: 这个问题比什么都更能促进我的知识… Java是否具有类似于PHP生成变量名的功能?我有一个SCJA证书,我正在为SCJP学习,但从未见过,但很好奇。 PHP示例 Java是否有类似的东西?我在这里一直在阅读,一般的答案是使用我不感兴趣的HashMap,因为这不是解决实际问题的方法。我对这可能的解决方案更感兴趣?如果不是这样,那就只是尝试扩大我的知识! 谢谢贾里德 问题答案: 不,变量(

  • 问题内容: 我正在生成一个简单的类,并且无法注入适当的变量名。ASM版本是。 这是代码: 我正在使用来简化代码生成。由于继承自,因此我假定它被允许使用它的方法。 除了变量名之外,发出的字节码没有其他问题。当方法被调用,而不是给变量指定名称的它会在字节码一个新的。 发出的字节码: 我正在使用newLocal()调用中提供的变量索引。但是在字节码中映射的索引3不是1。如果变量具有“更短”的类型,例如i