자바스크립트(javascript)

돼지·2021년 12월 14일
0

개발공부

목록 보기
1/17

변수
저장해 놓은 값을 가리키는 일종의 이름표라 생각할수있다.

let 변수명
const 변수명

const는 let과 달리 변수에 값을 재할당할 필요가 없을 때, 해당 변수가 고정된 값을 계속 갖고 있을 때 사용한다.

증감연산자를 활용해 count의 값을 계속 증가시키고 다시 count에 할당하면 에러가 발생할수있다. 그러니 비슷한 상황에서는 let를 쓰자.

var이라는 변수명은 여러단점이 있기에 더이상 사용하지않는다.

NaN
전역 NaN 속성은 Not-A-Number(숫자가 아님)를 나타낸다.

비교 연산자
||(or) 는 연산 대상 중 하나만 true 여도 true 리턴
&&(and) 는 연산 대상이 모두 true 여야만 true 리턴
!(not) 는 true를 false로, flase를 true로 바꿔서 리턴
or과 and는 헷갈린다.

일치 연산자는 ===을 사용한다.
==도 쓸수있으나 타입은 비교하지않아 1 == '1'도 true로 나온다.

문자열 붙이는방법

let 변수명 = 값 
console.log(`${변수명}을 나타낸다`) //이렇게 콘솔로그안에 백틱과 ${}를 사용하면 문자열 붙이기 쉬워진다.

자바스크립트는 들여쓰기를 안해도 세미콜론;을 안찍어도 작동이 된다고 한다.
다만 코드는 사람이 만들기에 사람의 가독성을 위해 들여쓰기를 해주는것이 좋다고 하며 세미콜론은 익숙해지면 생략한다고 하는데 나는 쓰겠다.
(세미콜론은 컴퓨터에게 여기까지 읽어! 라는느낌)

함수선언

function 함수명(파라미터){
  이 함수에서 실행할 코드
  return 반환값
}

매개변수(parameter)는 해당 함수의 바디에 있는 코드에서 사용할 수 있는일종의 변수이고, 함수 호출시 전달하게 된다.
함수를 실행하기 위해서 필요한 일종의 Input이라고 생각
중괄호 안에는 해야할 코드와 반환값을 명시해준다.

함수 호출

const a = 10
const B = 15

const 변수명 = 함수명(a, b)

클래스 선언

class 클래스명 {
  constructor(,2,3){
   this.=this.2 =2
   this.3 =3
  }
}

항상 남이 봐도 이해가 될수있게 클래스명과 변수명 같은 임의 지정값은 누구든 어떤것을 칭하는지 알수있게 표현하는게 좋다.

constructor - 생성자
클래스 중괄호 안에는 생성자를 적어준다.
나중에 객체가 생성될때 자바스크립트 내부에서 호출이 되는함수

this와 속성(property)
클래스를 사용해 만들어질 객체 자기자신을 의미하고 this뒤에 붙는 값은 객체의 속성이다.

클래스 객체만들기
const 변수명 = new 클래스명(값, 값2, 값3)

메소드(method)
클래스에는 데이터(값)를 나타내는 속성뿐만 아니라 함수와 같이 특정 코드를 실행할 수 있는 메소드도 정의할 수 있다. 객체를 생성한 후 만들어진 객체의 메소드를 호출하면 된다.
(클래스 선언 바디 중괄호 다음 설정 가능하며 메소드명(){}으로 만든다)

객체 리터럴
클래스와 같은 템플릿 없이 빠르게 객체를 만들 수 있는 방법
2개 이상의 속성과 메소드가 있을 때는 쉼표로 구별해주고 가독성을 위해서 줄바꿈도 해주는게 좋다.

const 변수명 = {
속성명: 데이터,
메소드명: function () { 메소드 호출시 실행할 코드들
}
}

  • 결과적으로 클래스를 활용해 객체를 만든 것과 동일
    복잡하게 클래스 정의하는 이유는 재사용성 때문
    한번 클래스를 만들어 두면 같은 속성과 메소도를 갖고 있는 객체를 훨씬 간결한 코드로 만들 수 있다.

배열 속 데이터를 요소라고 부른다(element)
[1, 2, 3, 4, 5]중에 [0~4]로 해당 요소를 찾을 수 있다.

파이썬 문법 기초와 자바스크립트 문법 기초를 듣고 난 후 느낀점

  • 유튜브에서 언어 1개만 마스터 해도 다른언어 배울때 더 쉬울수있다는 사실임
  • 분명 비슷하지만 그래서 헷갈릴수있다.
  • 자바스크립트는 들여쓰기 상관 x, 파이썬은 상관o

오늘 배운것들은 예전에 유튜브에서 봤던내용과 겹치는 부분도 있었고 모르는부분을 다시 알아가거나 새로운 것을 배웠다.

아직도 기초중에 기초라고 생각되며 더 열심히 공부해야겠다..
그리고 내가 개발공부 초반(현재)에 적은 이 노트들은 나중에 틀린점이 있을수 있으니 생각나거나 틀린점이 있다면 수정해야겠다.

profile
먐미

0개의 댓글