블록체인 기반 거래소를 만들기위해 리액트를 배워야 하고, 리액트를 배우기위해 기초언어인 자바스크립트를 배운다. 기초적인 함수의 작성법 부터 변수까지 알아야 고수개발자의 첫 걸음을 밟을 수 있다.
ES(ESMA Script) 자바스크립트(js)를 표준화하기 위해 만들어졌다. Node.js를 사용한 서버 응용 프로그램 및 서비스에도 쓰이고 있다. 해가 지날 수록 버전이 업데이트 되고 있다. 그 중 가장 큰 변화를 맞고, 클래스와 모듈을 작성할 수 있게 새로운 문법이 추가된 ES6를 기반으로 js를 배워나갈 것이다.
변하는 수, 변하는 값
코드를 작성함에 있어 항상 작성하게 될 변수는 크게 예약어와 변수명으로 나눠 볼 수 있다.
/* 예약어, 변수명 */
let yoon;
yoon = 123;
const KIweb;
KIweb = 456;
console.log(yoon); // 123;
console.log(KIweb); // 456;
정해진대로 작성해야 되며, ES6변수명을 선언한다.
대표적으로 let, const 등이 있다.
선언한 변수에 이름을 지어준다.
작성자 마음대로 쓸 수 있지만, 약간의 규칙이 존재한다.
js에서 크게 두가지로 나눌 수 있다.
숫자만 들어가는 타입
let num;
/* 10이라는 숫자 */
num = 10;
console.log(number); // 10;
true와 false (참과 거짓) 두 가지만 존재하는 타입
0: false, 1: true
let bool;
bool = true;
console.log(true); // true;
bool = false;
console.log(false); // false;
문자형식만 들어가는 타입
문자 입력방법: '문자', "무운자"
let str;
str = '헬로우!';
console.log(str); // 헬로우!;
str = "안녀어어엉";
console.log(str); // 안녀어어엉;
배열되어 들어가는 타입
let arr;
arr = [1,2,3];
console.log(arr); // [1,2,3];
/* 인덱스 */
console.log(arr[0]); 1;
console.log(arr[1]); 2;
let jjang;
jjang = ['짱구','철수','훈이'];
console.log(jjang); // ['짱구','철수','훈이'];
/* 인덱스 */
console.log(jjang[2]); // 훈이;
console.log(jjang[0]); // 짱구;
배열 안에 들어있는 값들 중 배열된 순서에 맞는 값을 출력하게 한다.
컴퓨터는 수를 셀때 1부터가 아닌 0부터 세므로, 1~10은 컴퓨테에게 0~9가 된다.
let jjang
jjang[2] // jjang 배열안에 3번째로 위치한 값
jjang[0] // jjang 배열안에 1번째로 위치한 값
배열과 비슷하나, 객체형식으로 들어가는 타입
key: value 방식으로 여러 객체를 넣을 수 있다.
let obj;
obj = {
/* key: value */
name: '짱구',
age: '7',
height: 137,
}
console.log(obj);
// {name: '짱구', age: 7, height: 137};
console.log(obj.name);
// 짱구;
console.log(obj.height);
// 137;
뜻으로 'obj안에 name'이라고 생각하면 된다.
실제로 obj 변수안에 name: '짱구' 라는 변수가 들어가 있는 걸 확인할 수 있다.
저장한 데이터를 다양하게 연산해서 각각 다른 결과값을 얻을 수 있다.
앞에 존재하는 값의 데이터 타입에 따라 연사자의 역할이 달라진다.
/* 숫자 + 숫자 */
console.log(1+2); // 3;
/* 문자 + 문자 */
console.log('안녕'+'하세요?'); // 안녕하세요;
/* 앞의 데이터타입과 뒤의 데이터타입이 일치된다. */
console.log(1+'안녕'); // 1안녕;
console.log('안녕'+1); // 안녕1;
/* 숫자 / 숫자 */
console.log(7/5); // 1.4;
/* 두 수를 나눈 값의 나머지값 */
console.log(7%5); // 2;
참과 거짓을 반환한다. (boolean 타입으로 반환된다.)
console.log(1==1); // true;
console.log(1==2); // false;
console.log(1 > 2); // false;
console.log(2 <= 2); // true;
두개의 boolean값을 비교하여 boolean값으로 반환한다.
console.log(true && true); // true;
console.log(true || false); // true;
console.log(!true && true); // false;
두 수를 비교하여 boolean값으로 반환한다.
그리고 그 두개의 boolean값을 비교해서 boolean으로 반환해준다.
비교랑 논리 연산자는 둘이 짝꿍!
console.log(1<2 && 2<3); //true
console.log(1<2 && 3<2); //false
console.log(1<2 || 2<3); //true
console.log(1<2 || 3<2); //true
console.log(!(1<2) && 2<3); //false
console.log(1<2 && 2<3); //true