DevGang
Авторизоваться

Константы JavaScript 

В JavaScript большинству разработчиков хорошо известны const. Он объявляет локальные переменные с областью действия блока, что означает, что значение константы не может быть изменено путем переназначения с использованием оператора присваивания, за исключением Object и Array.

Однако правильно ли и четко вы определили константу?

Соглашение об именовании

В соответствии с правилом именования Airbnb экспортируемые константы должны соответствовать формату SCREAMING_SNAKE_CASE, но не для констант внутри файла.

// Within a file
const helloWorldText = "Hello, World!"

// Exported constants
export const HELLO_WORLD_TEXT = "Hello, World!"

Примеры

Ниже приведены примеры всех экспортируемых констант типов данных:

// Number
const PI = 3.14159;

// String
const GREETING = "Hello, World!";

// Boolean
const IS_ACTIVE = true;

// Array
const COLORS = ["red", "green", "blue"];

// Object
const PERSON = {
    name: "John",
    age: 30
};

// RegExp
const EMAIL_PATTERN = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;

// Null
const NO_VALUE = null;

// Undefined
const UNDEFINED_VALUE = undefined;

// Symbol
const UNIQUE_KEY = Symbol("unique");

Другое использование

Помимо определения типов данных, const широко используется и в других контекстах.

1. Деструктуризация массивов

const [a] = ["a"];

2. Деструктуризация массивов со значениями по умолчанию

const [a = 0] = [];

3. Деструктуризация объектов

const {а} = {а: "значение"};

4. Деструктуризация объектов со значениями по умолчанию

const { a = "default" } = {};

5. Глобальные константы

// Browser environment
window.GLOBAL_CONSTANT = "This is a global constant";

// Node.js environment
global.GLOBAL_CONSTANT = "This is a global constant";

6. Переменные среды (Node.js)

const PORT = process.env.PORT || 3000;

7. Литералы шаблонов с константами

const name = "John";
const greeting = `Hello, ${name}!`;

8. Остаточные параметры в функциях

function sum(...numbers) {
    const result = numbers.reduce((acc, num) => acc + num, 0);
    return result;
}

9. Параметры функции деструктуризации

function printUser({ name, age }) {
    console.log(`Name: ${name}, Age: ${age}`);
}

10. Класс константы

class Circle {
    constructor(radius) {
        this.radius = radius;
    }

    getArea() {
        const PI = 3.14159;
        return PI * this.radius * this.radius;
    }
}

Источник:

#JavaScript #NodeJS
Комментарии
Чтобы оставить комментарий, необходимо авторизоваться

Присоединяйся в тусовку

В этом месте могла бы быть ваша реклама

Разместить рекламу