변수 선언에 var 사용을 중지하십시오 !!!
변수 선언에 var 사용 중지
JS를 처음 사용하거나 오랫동안 사용했다면 대부분의 경우
var
를 사용하여 변수를 선언할 수 있지만 이는 변수를 선언하는 가장 효율적이고 선호되는 방법이 아닙니다.하지만 왜?
var
대신 무엇을 사용해야 합니까?알아 보자!
기능 범위와 블록 범위
블록 범위
오늘날 대부분의 프로그래밍 언어는 블록 범위(Block Scope)라는 개념을 지원합니다. 즉, 변수가
for
루프 블록 내에서 선언되면 해당 변수는 해당 for
루프 외부에서 액세스할 수 없습니다.동일한 이름의 변수가
for
루프 외부에서 생성되면 블록 범위를 지원하는 프로그래밍 언어에서 다른 변수로 처리됩니다.몇 가지 의사 코드를 통해 이것을 이해해 봅시다.
function() {
//This variable belongs to function scope
name = "I am a string!"
for {
print(name)
}
}
여기 내부에
function
루프가 있는 for
와 name
라는 변수가 있습니다.우리는
for
의 자식인 function
루프에서 변수를 읽으려고 합니다.이 명령을 실행하면 다음과 같은 결과가 나타납니다.
I am a string!
이는 함수 범위에 있는 변수를 성공적으로 읽을 수 있음을 나타냅니다.
함수 범위는 함수 자체로 제한됩니다. 함수 외부에서
name
변수에 액세스할 수 없습니다.이번에는
function
에서 for
루프의 변수에 액세스하려고 합니다.function() {
for {
//This variable belongs to block scope
name = "I am a string!"
}
print(name)
}
이 코드를 실행하면 변수가 선언되지 않았다는 오류가 발생합니다. 즉, 변수가 존재하지 않습니다.
이는 자식 블록에 있는 변수에 액세스할 수 없지만 자식 블록은 부모 블록에 있는 변수에 액세스할 수 있음을 나타냅니다.
이것은 변수의 액세스가 특정 블록으로만 제한되는 블록 범위로 알려져 있습니다. 기능 블록에 있는 변수는 하위 블록에서 쉽게 액세스할 수 있지만 그 반대는 사실이 아닙니다.
이제 JavaScript에 대해 이야기합시다!
방금 본 블록 범위는 Java 및 C++와 같은 널리 사용되는 프로그래밍 언어에 적용됩니다. 개발자는 코드를 더 효율적으로 만들고 오류 발생 가능성을 줄이는 데 도움이 되므로 블록 범위를 사용하는 것을 선호합니다.
다행스럽게도 ES6의 출시와 함께 JavaScript는 이제 Block Scope도 지원합니다.
변수를 선언하는 동안
let
및 const
키워드를 사용하여 JavaScript에서 블록 범위를 만들 수 있습니다.let & const 란 무엇입니까?
let
및 const
는 변수를 만드는 데 사용할 수 있는 var
와 같은 JS 키워드입니다.다음은
var
를 사용하여 변수를 선언하는 방법입니다.var name = "I am a var variable."
그러나
var
를 사용하여 만든 변수는 함수 전체에서 액세스할 수 있습니다. 즉, 함수 범위에 있습니다.그러나 방금 언급했듯이 우리는 변수가 생성된 블록 내에서만 액세스할 수 있기를 원합니다.
이를 달성하기 위해 변수 선언에
var
를 사용하지 않고 변수 선언에 let
& const
를 사용합니다.let name = "Bobby"
const birthday = "16 June"
let 과 const 의 차이점은 무엇입니까?
let
- let
키워드를 사용하여 만든 변수는 쉽게 수정하고 덮어쓸 수 있습니다. 이 키워드를 사용할 때와 같은 방식으로 사용할 수 있습니다var
.const
- const
를 사용하여 만든 변수는 변경하거나 수정할 수 없습니다. 어떤 방법으로도 변경하거나 수정할 수 없도록 실행 내내 일정하게 유지될 것으로 예상되는 변수를 선언하는 데 이 키워드를 사용할 수 있습니다. 최종 테이크아웃!
변수 선언에
var
사용을 중지하고 let
& const
사용을 시작하십시오.지원하다
읽어주셔서 정말 감사합니다! 이 블로그 게시물이 도움이 되었기를 바랍니다.
제 작업이 마음에 드시면 더 많은 프로젝트와 기사를 가져올 수 있도록 Buying me a Coffee을 고려하십시오.
또한 질문이나 의심이 있으시면 언제든지 , & GitHub로 저에게 연락하십시오. 또는 댓글/토론을 게시할 수도 있습니다. 최선을 다해 도와드리겠습니다 :D
Reference
이 문제에 관하여(변수 선언에 var 사용을 중지하십시오 !!!), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/mindninjax/stop-using-var-for-declaring-variables-2p3a텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)