 
			
				23.09.2021, 17:07
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Новичок на форуме 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 29.06.2021 
					
					
					
						Сообщений: 4
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
			
			 
				Зачем в javascript нужны константы ?
			 
			
		
		
		
		Я новичок в js - пришёл сюда недавно из PHP. Прочитал учебник Ильи Кантора, учу Vue.js. Читая темы здесь на форуме и когда просматривал код React'а, заметил склонность некоторых js-программистов объявлять константы, а не переменные. Собственной мой вопрос - зачем стремиться к тому, чтобы объявлять всё через const, а не let ? Это первый вопрос. Второй вопрос заключается в следующем. Зачем некоторые программисты стараются использовать везде функции-стрелки вместо обычных функций, у них ведь нет this и нет arguments ? И последний, флеймовый вопрос. Какой js-фреймворк учить ? Правильно я сделал что выбрал Vue.js ? С чем вы бы посоветовали ознакомиться в первую очередь в фронтенд разработке кроме вёрстки ? Дайте какой-нибудь совет мне. 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				23.09.2021, 17:50
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Новичок на форуме 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 29.06.2021 
					
					
					
						Сообщений: 4
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	
		
			Сообщение от goootlib
			 
		
	 | 
 
	| 
		Я новичок в js - пришёл сюда недавно из PHP. Прочитал учебник Ильи Кантора, учу Vue.js. Читая темы здесь на форуме и когда просматривал код React'а, заметил склонность некоторых js-программистов объявлять константы, а не переменные. Собственной мой вопрос - зачем стремиться к тому, чтобы объявлять всё через const, а не let ?
	 | 
 
	
 
 Как бы понятно что так скорей всего делают чтобы не было возможности изменить, что уже было объявлено. Но просто в PHP да и во всех остальных языках тоже есть константы, но там их таким образом не используют как в js.  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				23.09.2021, 17:53
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Тлен 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 02.01.2010 
					
					
					
						Сообщений: 6,601
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
		
		
		 Юзать const для неизменных значений - хорошая привычка. Если ты случайно попытаешься изменить const - оно те не даст, в отличие от let\var. Потому в большинстве линтеров правила забиты которые приучают тебя к этому.)  
 
На счёт выбора Vue я лично поддерживаю: лучший фреймворк, где надо думает за тебя, где надо позволяет свободу самовыражения.) 
В React куча унылого никому не нужного микроконтроля и устаревшая неудобная система реактивности с бесполезным оверхэдом. Angular - прокрустово ложе с кучей мусора и boilerplate. 
		
	
		
		
		
		
		
			
				__________________ 
				29375, 35 
 
			 
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				23.09.2021, 18:06
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 CacheVar 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 19.08.2010 
					
					
					
						Сообщений: 14,298
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	| 
		
			Сообщение от goootlib
			
		
	 | 
 
	| 
		Но просто в PHP да и во всех остальных языках тоже есть константы, но там их таким образом не используют как в js.
	 | 
 
	
 
 Я х/з как в ПХП...   
Но именно в некоторых ЯП константы так и используются. Их цель явно что-то определить и не давать потом модифицировать.  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				23.09.2021, 18:09
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 CacheVar 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 19.08.2010 
					
					
					
						Сообщений: 14,298
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	| 
		
			Сообщение от goootlib
			
		
	 | 
 
	| 
		Зачем некоторые программисты стараются использовать везде функции-стрелки вместо обычных функций, у них ведь нет this и нет arguments ?
	 | 
 
	
 
 С чего ты взял что они это делают именно "везде"?   
Очевидно стрелочные функции используются там где их можно использовать. Иначе были бы проблемы с выполнением кода...  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				23.09.2021, 18:12
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 CacheVar 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 19.08.2010 
					
					
					
						Сообщений: 14,298
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	| 
		
			Сообщение от goootlib
			
		
	 | 
 
	| 
		Какой js-фреймворк учить ?
	 | 
 
	
 
 Почитай про все... Выбери (для начала) тот, который тебе больше будет понятен. 
Но выгоднее знать про все, т.к. не понятно в какую контору тебе придется устраиваться и что там будут требовать...  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				23.09.2021, 18:50
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 03.02.2020 
					
					
					
						Сообщений: 2,777
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	| 
		
			Сообщение от goootlib
			
		
	 | 
 
	| 
		Но просто в PHP да и во всех остальных языках тоже есть константы, но там их таким образом не используют как в js.
	 | 
 
	
 
 Ну в С++ как раз так константы и используют, особенно с указателями.
 
	
 
	| 
		
			Сообщение от goootlib
			
		
	 | 
 
	| 
		Зачем некоторые программисты стараются использовать везде функции-стрелки вместо обычных функций, у них ведь нет this и нет arguments ?
	 | 
 
	
 
 Далеко не во всех функциях используется this, а arguments и того реже. 
А запись стрелочных функций короче. Ну и кроме того, что не надо при вызове тащить this и arguments у интерпретатора появляются дополнительные возможности для оптимизации.  
		
	
		
		
		
		
		
		
		
						  
				
				Последний раз редактировалось voraa, 23.09.2021 в 18:53.
				
				
			
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				23.09.2021, 21:30
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 CacheVar 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 19.08.2010 
					
					
					
						Сообщений: 14,298
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		Уже прям интрига повисла!    
goootlib, каким же образом используются константы в тех "во всех остальных языках"?    
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				24.09.2021, 00:25
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Тлен 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 02.01.2010 
					
					
					
						Сообщений: 6,601
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	
		
			Сообщение от voraa
			 
		
	 | 
 
	| 
		Ну и кроме того, что не надо при вызове тащить this и arguments у интерпретатора появляются дополнительные возможности для оптимизации.
	 | 
 
	
 
 На счёт "тащить this" - спорный аргумент. ИМХО как раз стрелки "тащат" this - они вынуждены запоминать this окружения и использовать оный откуда бы их не вызывали, в то время как для обычных функций this скорее что-то вроде скрытого простого аргумента: some.func(a) -> func(this = some, a) и на производительность с памятью влиять не должен.)  
		
	
		
		
		
		
		
			
				__________________ 
				29375, 35 
 
			 
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				24.09.2021, 08:50
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 03.02.2020 
					
					
					
						Сообщений: 2,777
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	| 
		
			Сообщение от Aetae
			
		
	 | 
 
	| 
		ИМХО как раз стрелки "тащат" this - они вынуждены запоминать this окружения
	 | 
 
	
 
 Функции всегда тащат свое лексическое окружение, что бы иметь возможность реализовывать замыкание. В этом случае this просто переменная из замыкания.  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
 
 |  
  |