자바스크립트가 헷갈리는 이유, 차이점을 알고 배워보세요

JavaScript는 그 친구 Typescript로 당시 슈퍼스타였습니다.



그들은 많은 libs를 가지고 있고 그들의 커뮤니티는 정말 큽니다. 이것은 많은 프레임워크가 있기 때문에 매우 유용하게 만들었습니다.

따라서 JavaScript, 모바일 앱, 데스크톱, 웹 앱, 심지어 AI 모델, IoT, 백엔드 및 프런트엔드로 모든 것을 만들 수 있습니다.

그 이유는 아마도 당신이 그것을 배우게 할 것입니다.


우리에게 혼란스러운 이유는 무엇입니까?



실제로 이것은 알아야 할 것이 많지만 주로 큰 차이점은 구문 및 기타 기능입니다. 여기에서 모두 다룰 것입니다.


변수 선언



다른 언어에는 기본 데이터 유형이 있다는 것을 알고 있습니다.

int, char, string, float 등.

그러나 JavaScript는 변수 선언에 대해 다른 말을 할 수 있습니다.

그들은 그것을 동적으로 유형화(dynamic typed)라고 불렀고, 이는 자바스크립트가 파이썬처럼 이 변수 ​​안에 무엇이 있는지 자동으로 이해한다는 것을 의미합니다.

let x=5;// int
let str='hi' // string with single quote
let Str="Hi" // string with double quote


여기에 문자가 없습니다. 문자열은 원하는 대로 한 문자일 수 있습니다.

부울과 같은 다른 데이터 유형

let status=true;
let isWorking=false;


변수 선언에서 혼란스러운 점



변수 var를 선언하는 구식 키워드가 있습니다.
이 키워드는 혼란을 만듭니다
보자

{
// making a local scope with brackts
let x=6;
var y=5;
}
console.log(x);// undfinded 
console.log(y);// 5


var가 전역 범위 변수이기 때문에 발생했습니다.

어디서나 보인다

우리가 '엄격한 사용'을 사용하는 것과 같은 것을 고치기 위해 곧 그것에 대해 이야기하겠습니다.

'use strict'
{
// making a local scope with brackts
let x=6;
var y=5;
}
console.log(x);// undfinded 
console.log(y);// undfinded



기능



함수가 어디에나 있다고 선언하지만 여기에 차이점이 있습니다.

모든 유형의 값을 함수에 전달할 수 있습니다.

function foo(x,y){
 return x+y;
}
foo("Hi"," Kro") //Hi Kro
foo(2,4) // 6


멋지다고 생각할 수도 있지만 대부분의 경우 멋지지 않은 이유는 함수가 버그에 빠질 수 있기 때문입니다. 처리할 때 주의해야 합니다.

==



실제로 다른 비교 연산자는 ===입니다.
그래 알겠어

차이점은 실제로 변수 때문입니다.

알다시피 우리는 let을 사용하여 무엇이든 선언할 수 있습니다.

따라서 비교할 때 다른 데이터 유형과 비교할 수 있습니다.

let x=5;
let y="6";
(x==y)// true
(x===y)//false


== 연산자는 데이터 유형이 다른지 여부를 인식하지 않고 동일한지 확인하기 위한 것입니다.

그러나 다른 하나는 === 모양과 데이터 유형이 정확히 일치하는 것을 원합니다.

피해야 할 것들



아시다시피 JavaScript는 문장을 끝내기 위해 세미콜론이 필요하지 않습니다.

하지만 가끔은

왜요?

JavaScript 파서 또는 엔진(컴파일러와 유사) 때문입니다.

모든 좋은 결말 표현에 세미콜론을 넣어

alert(5+
6
+2); // 13


여기에서 볼 수 있듯이 Js 파서는 이 경우에 세미콜론을 넣지 않았습니다. 좋은 종료 표현이 없으면 무시하기 때문입니다.

JavaScript에 대한 추가 자습서

The Modern JavaScript Tutorial

좋은 웹페이지 즐겨찾기