Pregunta Convención de nombres para las claves del objeto const en ES6


¿Existe una convención de nomenclatura recomendada para los nombres clave dentro de un objeto const en es6? No he podido encontrar un recurso que indique si deberían estar en mayúsculas o en minúsculas.

const COLOR_CODES = {
  BLUE: 1,
  RED: 1
};

vs

const COLOR_CODES = {
  blue: 1,
  red: 1
};

Los ejemplos de este artículo de MDN muestran ambos estilos, por lo que tal vez ambos sean aceptables.


5
2017-10-27 18:28


origen


Respuestas:


Según Google sería todo en mayúsculas. Hablando desde la experiencia, la mayoría de los otros lenguajes de programación tienen mayúsculas, por lo que sugeriría usar eso.

Utilizar NAMES_LIKE_THIS para valores constantes.

Utilizar @const para indicar un puntero constante (no sobrescribible) (una variable o propiedad).

Guia javascript de google https://google.github.io/styleguide/javascriptguide.xml


3
2017-10-27 18:41



NOTA: tenga en cuenta que la respuesta aceptada tiene un enlace a una guía de estilo de Google obsoleta

Esto es bueno (literales de cadena o literales enteros):

const PI = 3.14;
const ADDRESS = '10.0.0.1';

pero...

const myObject = { key: 'value' };
const userSuppliedNumber = getInputNumber()

Guía de estilo de Google JavaScript dice:

Declara todas las variables locales con const o let. Usa const por   predeterminado, a menos que una variable deba ser reasignada. La palabra clave var   no debe ser usado.

Cada constante es una propiedad estática de @const o un const local de módulo   declaración, pero no todas las propiedades estáticas @const y módulo-local   consts son constantes Antes de elegir el caso constante, considere si   El campo realmente se siente como una constante profundamente inmutable. Por ejemplo,   si cualquiera de los estados observables de esa instancia puede cambiar, es casi   Ciertamente no es una constante. Simplemente con la intención de nunca mutar el objeto   Generalmente no es suficiente.

JavasSript.info dice:

... las constantes con nombre de capital solo se usan como alias para "codificado"   valores.


7
2018-03-28 14:27



Google recomienda lo siguiente:

const COLOR_CODES = {
  BLUE: 1,
  RED: 1
};

Ver: https://google.github.io/styleguide/javascriptguide.xml#Constants

  • Utilizar NAMES_LIKE_THIS por constante valores.
  • Utilizar @const para indicar una constante (no sobrescribible) puntero (una variable o propiedad).
  • Nunca use el const palabra clave ya que no es compatible con Internet Explorer.

4
2017-10-27 18:42



Las convenciones de nomenclatura están por todas partes, yo personalmente todavía no he decidido sobre mi preferencia pero para agregar a la discusión esto es lo Guía de estilo de Airbnb JavaScript dice (ver los últimos ejemplos):

// 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'
};

1
2017-07-11 13:33