4

Именование переменных в JavaScript

Имена переменных


При именовании переменных нам нужно придерживаться определенных правил:


1. Имя переменной должно содержать только буквы, цифры или символы $ и _.


let user = 'John';
let $user = 'Alice';
let _user = 'Pete';
let user2 = 'Antony';
let u2s3e4r = 'Alex'; // Так лучше не делать, но это будет работать

2. Первый символ в имени не должен быть цифрой.

let 10user = 'Nick'; // Ошибка!
3. Имена переменных должны быть написаны на латинице. Вы конечно можете называть переменные на кириллице, а также на любом другом языке кроме английского, но это считается плохой практикой.


let mentor = 'John Doe'; // Good
let ментор = 'Alice Cooper'; // Bad

4. Имя переменной должно отражать смысл того что она хранит.


let age = 20;
let color = 'red';
let sum = 10 + 10;
let salary = '0$';

Как быть если имя переменной должно состоять из нескольких слов ? На самом деле у есть много стилей именования переменных.


Например:


let snake_case = 'Слов пишутся без пробелов, вместо пробела используется символ _';
let PascalCase = 'Слова пишутся без пробелов и все с большой буквы';
let camelCase = 'Слова пишутся без пробелов, начиная со второго слова все пишутся с большой буквы';
let kebab-case = 'Слов пишутся без пробелов, вместо пробела используется символ -';

В JS вызывает ошибки так как символ '-' не разрешен для использования в именах переменных, также kebab-case еще называю шашлычным регистром. При написании кода на JavaScript мы в основном используем camelCase.


let userAge = 20;
let userFirstName = 'John';
let userLastName = 'Doe';
let userFullName = userFirstName + ' ' + userLastName;
let userSuperLongVariableName = 'Value';

Константы


Все вышеперечисленное прекрасно подходи и для именования констант. Но также, иногда, для трудно запоминаемых значений которые известны еще до начала выполнения скрипта, константы именуют в верхнем регистре используя snake_case.


const API_URL = 'https://api.url/posts';
const DATABASE_NAME = 'junjun_db';
const COLOR_WHITE = '#ffffff';
const COLOR_BLACK = '#000000';

Для получения более полной информации рекомендую посмотреть соответствующий урок прикрепленный в самом начале материала.


Вот ссылочка на урок


P.S. Больше уроков у меня на канале

Другие посты об образовательной платформе ищите по тэгу GeekBrains. Всю необходимую информацию и отзывы ищите в нашем специальном разделе. Там вы найдёте все актуальные курсы GeekBrains.

Web-технологии

534 поста5.8K подписчиков

Правила сообщества

1. Не оскорблять других пользователей

2. Не пытаться продвигать свои услуги под видом тематических постов

3. Не заниматься рекламой

4. Никакой табличной верстки

5. Тег сообщества(не обязателен) pikaweb

0
Автор поста оценил этот комментарий
я подсказал где его искать или как его можно получить

Ага, в гугле? Может у нас с вами гугля разные, но мой вот в упор не видит иммутабельных массивов.

Иллюстрация к комментарию
раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Я вам ранее писал, вы можете создать свой класс который будет реализовывать данный функционал, может накинуть прокси поверх дефолтного массива и описать логику там.

Вы можете гуглить как хотите, человек который не хочет найти решение его и не найдет )

0
Автор поста оценил этот комментарий

Бремя утверждения лежит на утверждающем и заметьте, не я утверждал, что возможен иммутабельный массив в js.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

А кто-то говорит обратное ?

Вы попросили пример, я подсказал где его искать или как его можно получить, не вижу в этом ничего плохого.

показать ответы
0
Автор поста оценил этот комментарий
Даже не обращая внимание на написанное мной выше, в любом случае можно написать код который будет делать массив иммутабильным.

Можно пример?

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Конечно, поищите в интернете раз не можете сами написать )

показать ответы
0
Автор поста оценил этот комментарий

Можно пример иммутабельного массива?

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Вы шутите ?)

Все в JS кроме примитивных типов данных является объектом )

Даже не обращая внимание на написанное мной выше, в любом случае можно написать код который   будет делать массив иммутабильным.

Можно инкапсулировать логику такого объекта в классе или использовать Proxy. Куча вариантов реализации.

На всякий случай оставлю ссылочку на Proxy чтобы меня правильно поняли

https://developer.mozilla.org/ru/docs/Web/JavaScript/Referen...

показать ответы
2
Автор поста оценил этот комментарий

Думаю, что nazarpunk имел в виду, что const не делает объекты иммутабельными, поэтому константы в js как бы не совсем константы

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

К сожалению, я не знаю что он имел ввиду, а для того чтобы сделать объект иммутабильным в JS есть другие механизмы, являющиеся стандартными для языка. )

показать ответы
2
Автор поста оценил этот комментарий

Именовать надо так, как принято в команде, в которой ты работаешь. UPPER, lower, camelCase, и даже юникодная кириллица.

Как принято - так и именуешь.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Это понятно, в данном материале, который подготовлен для начинающих, речь идет о работе с самим языком, а cameCase это общепринятый вариант именования в JS.

0
Автор поста оценил этот комментарий
Все вышеперечисленное прекрасно подходи и для именования констант.

В js есть константы?

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Вы серьезно ?

Константы - https://www.youtube.com/watch?v=ttugeKnYfYw&list=PL66qhu...

Переменные - https://www.youtube.com/watch?v=Xm0kBdE7kWk&list=PL66qhu...

Предпросмотр
YouTube8:30
Предпросмотр
YouTube3:28
показать ответы
0
Автор поста оценил этот комментарий

Какой-то странный порядок. Сначала голый html, теперь js.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Еще и мемы проскакивают )

Стараюсь на канале миксовать уроки, но на самом youtube они разбиты по плейлистам.

2
Автор поста оценил этот комментарий

А если кодишь сам, то просто придерживаешься единого стиля по всему проекту.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Даже если не сам, а также если работаешь в тиме разрабов

Автор поста оценил этот комментарий

Поискал и везде пишут, что нужно создавать копии массива для иммутабельности.


А вы же утверждаете, что

в любом случае можно написать код который будет делать массив иммутабильным.

Так что, shut up and show me the code.

раскрыть ветку (1)
Автор поста оценил этот комментарий

Я повторюсь, если вы не можете сами реализовать тот код который будет решать ваши задачи и даже просто загуглить по нормальному то это не мои проблемы)

Если вы хотите чтобы я делал вашу работу за вас, то за бесплатно я этого делать не буду.

Так что shut up and show me money

показать ответы