es6中const对象中的键名是否有推荐的命名约定?我无法找到一个资源,说明它们应该是大写还是小写。
const COLOR_CODES = {
BLUE: 1,
RED: 1
};
VS
const COLOR_CODES = {
blue: 1,
red: 1
};
这篇MDN文章中的The examples显示了这两种风格,所以两者都可以接受。
答案 0 :(得分:14)
请注意:请注意,已接受的回复包含指向过时的Google风格指南的链接
这很好(字符串文字或整数文字):
const PI = 3.14;
const ADDRESS = '10.0.0.1';
但是...
const myObject = { key: 'value' };
const userSuppliedNumber = getInputNumber()
resize
说:
使用const或let声明所有局部变量。使用const by 默认情况下,除非需要重新分配变量。 var关键字 不得使用。
每个常量都是@const静态属性或模块本地const 声明,但不是所有@const静态属性和module-local consts是常数。在选择常量情况之前,请考虑是否 这个领域真的感觉像一个深刻不变的常数。例如, 如果该实例的任何可观察状态可以改变,那就差不多了 当然不是一个常数。仅仅打算永远不会改变对象 通常是不够的。
Google JavaScript Style Guide说:
...以资本命名的常量仅用作“硬编码”的别名 值。
答案 1 :(得分:11)
根据Google的说法,它将全部上限。根据经验,大多数其他编程语言都有全部上限,所以我建议使用它。
使用NAMES_LIKE_THIS
作为常量值。
使用@const
表示一个常量(不可重写)指针(变量或属性)。
Google javascript指南 https://google.github.io/styleguide/javascriptguide.xml
答案 2 :(得分:5)
Google曾推荐过以下内容:
const COLOR_CODES = {
BLUE: 1,
RED: 1
};
请参阅:https://google.github.io/styleguide/javascriptguide.xml#Constants
NAMES_LIKE_THIS
获取常量值。@const
表示常量(不可重写)指针(变量或属性)。const
关键字,因为Internet Explorer不支持。但是,更新的style guidelines有不同的建议。
答案 3 :(得分:4)
命名约定无处不在,我个人还没有决定我的偏好,但是Airbnb JavaScript Style Guide说的是(在后面的例子中),这是在讨论中添加的内容:
// bad
const PRIVATE_VARIABLE = 'should not be unnecessarily uppercased within a file';
// bad
export const THING_TO_BE_CHANGED = 'should obviously not be uppercased';
// bad
export let REASSIGNABLE_VARIABLE = 'do not use let with uppercase variables';
// ---
// allowed but does not supply semantic value
export const apiKey = 'SOMEKEY';
// better in most cases
export const API_KEY = 'SOMEKEY';
// ---
// bad - unnecessarily uppercases key while adding no semantic value
export const MAPPING = {
KEY: 'value'
};
// good
export const MAPPING = {
key: 'value'
};