Wecode 4일차

김상연·2021년 2월 21일
0

wecode

목록 보기
4/42

08:00~09:00 헬스장
09:50 위코드 도착

3일차까지 html/css 기초를 배우고 드디어 javascript를 시작했다.
javascript는 사전스터디 기간동안 어느 정도 했었지만 거의 기초부터 시작하는 거라 잘 모르는 개념부터 천천히 잡아가겠다.

javascript에서는 변수라는 개념이 등장한다.

var name = "김상연"
var job = "fronted developer"

var는 변수를 선언한다. var name = "김상연"은 name이라는 변수를 "김상연"이라고 선언하는 것이다.
name은 변수의 이름인데 주의할 사항이 있다.

  1. 한 파일에서는 같은 변수 이름 중복 사용 X
  2. 변수 이름, 함수 이름은 camelCase 방식 사용
  3. 변수 이름을 정할 때 첫 문자는 반드시 글자나 밑즐(_), $중 하나
  4. 대소문자 구분 - myName과 Myname은 다른 변수

참고로 변수명을 지을 때는 의미가 추측 가능하게 짓는 것이 좋다. 코드의 가독성을 높이기 위해서다. 변수명을 지어주는 사이트(https://www.curioustore.com/#!/)가 따로 있을 정도다!

앞서 var로 변수를 선언하는데 최근 let, const 키워드가 새롭게 추가되었다.

let과 const의 차이는 수정할 수 있는지 없는지의 차이다.
const 키워드를 쓰게 되면 변수의 값을 수정할 수 없다.

let company1address = "선릉";
let company2address = "선릉";
let company3address = "강남";
let company4address = "강남";
let company5address = "선릉";
company5address = "선릉";

또한 변수명은 중복이 되지 않지만 값은 중복 가능!!

함수

함수를 불러 실행시키는 것을 호출한다고 표현한다.

function checkCoorect() {
	let hi = "안녕하세요";
    return hi;

위와 같이 함수를 정의할 수 있다.
그렇지만 이렇게 정의만 하고 호출하지 않으면 실행되지 않는다.

checkCorrect(); - > 함수 호출

parameter(매개변수)와 argument(인자)

매개변수란 외부로부터 들어오는 값을 담아 함수 내부에 사용하도록 하는 변수

function getName(name) {
	return name + "님";

(name)을 매개변수라고 한다.

인자는 매개변수에 들어갈 구체적인 값을 뜻함.

수학 표현식

자바스크립트에는 기본적인 수학 계산이 내장되어 있다.

그러나 다소 생소한 수학 표현식이 있다.

let num = 1;
let newNum = num++;
console.log(num); // Output : 2
console.log(newNum); Output : 1

num은 당연히 1이 나오고 newNum이 2가 나올 줄 알았는데 값이 반대가 되었다. 왜 그런지는 그림을 보고 이해하자.

위를 풀어서 작성하면

let num = 1;
let newNum = num;
num++;

num에 1을 할당했는데 그 다음 newNum을 num의 값으로 정의, num++를 주므로 num은 2, newNum이 1을 할당받은 것이다.
newNum에도 2를 할당하고 싶으면 let newNum = ++num;

비교 연산자

비교 연산자의 종류에는 동치 연산자(==, ===, !=, !==)와 관계 연산자(>, <, >=, <=)가 있다.

일치 연산자(===)와 동등 연산자(==)

===는 엄격한 비교연산자이고 ==는 느슨한 비교 연산자이다

===는 number형이면 number형만, string형이면 string 형만 true로 인식한다

if ("3" === 3) {
	return false;

위와 같이 왼쪽은 문자열 오른쪽은 숫자열이므로 ===을 사용하면 거짓이 된다.

if문을 이용해 가위바위보 게임 만들기

조건
1. player 1과 player 2중 이긴 사람 리턴
2. 비기는 경우 무조건 player1이 리턴
3. player1과 player2의 값은 다음 셋 중 하나
"가위" , "바위" , "보"

let player1 = "가위"
let player2 = "바위"

function rockPaperScissors(player1, player2) {
	if ((player1 === "가위" && player2 === "보") || (player1 === "바위" && player2 === "가위") || (player1 === "보" && player2 === "바위")) {
    return "player1"
  } else if (player1 === player2) {
  	return "player1" 
  } else {
  	return "player2"
  }
}

조건은 세 개이다. player1이 이기는 경우, 둘이 비기는 경우, player2가 이기는 경우.

첫 번째 조건을 만족시키기 위해서 player1이 이기는 경우만 대입하였다.

두 번째 조건은 둘이 비길 경우이므로 player1 === player2 조건을 주었다.

세 번째 조건은 남은 조건이므로 else문을 써서 간단하게 작성할 수 있었다.

주의할 점으로는 return player2 이렇게 작성할 경우 "바위"값이 나오므로 꼭 "" 감싸서 작성해줘야 한다!

0개의 댓글