변수가 필요한 이유는 자바스크립트로 만든 애플리케이션은 대부분 사용자나 서버에서 받은 정보를 처리하는 과정을 거쳐 동작하게 되는데, 복잡한 정보를 간단하게 변수에 담아 가독성을 높이고, 추후 재사용시 더 간편하게 사용할 수 있도록 도움을 줄 수 있기 때문에 변수가 필요하다.
변수를 선언하는 방법은
let 변수명 = 정보
const 변수명 = 정보
let는 변수, 즉 변할 수 있는 수로써 재선언이 가능하다.
let name = 'kim'
console.log(name) // kim
name = 'lee'
console.log(name) // lee
const는 상수로써, 변하지 않는다는 것을 표시해 줄 수 있는 변수타입이다.
const name = 'kim'
console.log(name) // kim
name = 'lee' // error
console.log(name) // kim
자바스크립트의 데이터 타입은 원시타입과 객체타입으로 나눌 수 있다.
원시타입은 최하위 타입으로 불변하는 타입이다.
- Boolean 타입 - true와 false로 표현되며, 참과 거짓을 표현하는 타입
- Null 타입 - Null은 값이 없음을 임의적으로 기입하여 표현한 타입
- Undefined 타입 - 값이 할당되지 않았음을 표현한 타입
- Number 타입 - 숫자를 표현한 타입
- String 타입 - 텍스트를 표현한 타입
객체타입은 변수 또는 함수의 집합이다. 변수로 담기 까다로운 정보들을 하나의 박스에 모아 객체로 만들고, 그 안의 속성들에 접근이 가능하게 하는 타입이다.
//객체선언방법
const 객체명 = {
name: 'kim'
age: 25
gender: 'male'
}
// 접근방법
console.log(객체명.name) // kim
console.log(객체명.age) // 25
isNaN(); // 인자값이 NaN값인지 boolean(true, false)타입으로 반환
console.log(isNaN(2)) // false
console.log(isNaN(NaN)) // true
parseInt(문자열, 진법); // 문자열 인자를 파싱하여 특정 진수(수의 진법 체계에서 기준이 되는 값)의 정수를 반환
console.log(parseInt(' 0xF',16)) // 15
isInteger(); // 인자값이 정수인지 boolean타입으로 반환
console.log(isInteger(1)); // true
console.log(isInteger(1.1)); // false
str.toLowerCase(); // 인자값을 전부 소문자로 변환하여 반환
const str = 'The quick brown fox jumps over the lazy dog';
console.log(str.toLowerCase()); //"the quick brown fox jumps over the lazy dog."
// toUpperCase()는 반대로 인자값을 전부 대문자로 변환하여 반환
str.charAt(); // 특정 인덱스에 있는 문자를 반환
let fff = 'kimtaeksoo'
console.log(fff.charAt(2)); // m
str.repeat(); // 인자값만큼 문자열을 반복
console.log('abc'.repeat(2)); // 'abcabc'
함수는 작업을 수행하거나 값을 계산하는 문장 집합 같은 자바스크립트 절차이다. 어떠한 로직을 통해 값을 도출해야할 때 함수를 이용하여 함수 내부의 여러 로직들을 통해 우리가 원하는 값을 도출해낼 수 있다.
function a(x,y) {
return x/y
}
a(4,2); // 2
다양한 로직을 수행하기 위한 함수를 정의해놓고 정작 호출을 하지 않으면 함수는 작동하지 않는다. 상단의 예처럼 a라는 함수를 정의하고, 그 하단의 a(4,2)와 같이 함수명과 괄호로써 함수를 호출(실행)한다.
여러 로직을 수행하는 방법 중에 하나는 조건문을 사용하는 것인데
조건문이란 조건에 따라 특정 코드가 실행될 수 있도록 만드는 문법이다
쉬운 예로는, 로그인 여부에 따라 글을 작성할 수 있게 할것인지, 작성할 수 없게 만들것인지에 대한 로직은 조건문으로 구현할 수 있다.
function login(성공, 실패) {
if(성공) return 로그인성공
else return 로그인실패
}
// if의 인자가 true이면 로그인성공을 return하고, 그 외에는 로그인실패를 return하여 로직을 구현할 수 있다.