일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 구글
- OTT
- 2018년 개봉작
- 왓챠
- 2010년대 영화
- 2020년대 영화
- 유희열
- 스테픈 커리 파이널 MVP
- 앱테크
- 2000년대 영화
- 엑셀 excel
- 2022년 NBA final 파이널 6차전
- 63호
- 2005년 개봉작
- 설거지하며 영화보기
- 카카오페이
- 그래스호퍼
- GRASSHOPPER
- 1990년대 영화
- 넷플릭스
- 토스
- 2022년 영화
- 싱어게인2
- 2001년 개봉작
- 코로나
- 라디오천국
- 레그레이즈
- 쿠키런 킹덤
- 넷플릭스 영화
- 2019년 개봉작
- Today
- Total
It's not over until you win
[Grasshopper] Fundamental II-2. Alternative Options 본문
2챕터.
2-2-1. Get Back Home
For...of를 사용하여 Loop가 진행되면, 마지막 값에 머물러 있게 된다.
예시를 통해 알아보자.
var place = 'home' ; print (place) ; for ( place of [ 'Ecuador', 'Fiji', 'Guinea' ] ) { print (place) ; } place = 'home' ; print (place) ; |
이 때 결과값은 이렇게 나온다.
> home > Ecuador > Jiji > Guinea > home |
그런데 만약 중간에 place='home' ; 코드를 제외한다면 값이 어떻게 될까?
> home > Ecuador > Jiji > Guinea > Guinea |
최초 home을 출력하고, 다음에는 place의 value를 차례대로 출력하라고 했으니 그대로 나오는데, 이후 place의 value는 Guinea에서 멈춰있기 때문이다. 그래서 다시 home을 출력하려면 이를 재설정해줘야 한다는 뜻.
말로 설명하기 어렵다면 예시로라도 이해해보자.
var x = 100 ; if ( x > 0 ) { let x = 25 ; } print (x) ;ee |
출력값은 뭘까? 100이다. { } 안에서 선언한건 그안에서만 쓰는 내용이기에 최초 var x = 100 ; 임에 따라 출력값은 100
var place = 'home' ; print (place) ; for ( let place of [ 'Algeria', 'Banfladesh', 'Cuba' ] ) { print (place) ; } print (place) ; |
2-2-1.에서는 for...of만 사용했고, 2-2-2.에서는 그 안에 let을 사용했다. 그 차이점이 무엇인지를 알려주는 단계다.
2-2-3. Let It Go?
let을 이해했는지 확인하는 문제다. 정답은 10이다.
var x = 10 ; if ( x > 5 ) { let x = 1 ; } else { let x = 0 ; } print (x) ; |
2-2-4. Used Variable Scope
위에서 Let을 배우면서 나온 내용을 다시 설명해준다.
2-2-5. Roads or Rails
Ternary operation(우리말로 '삼항연산자'라고 한단다)을 배운다.
형식은 이렇다.
ex.) test ? doThisIfTrue : elseDoThis.
이 예제가 제시하는 건 Test가 True라면 Drive a Car. False라면 Buy train Tickets.
자. 따라가보자.
var timeOffWork = 7 ; var daysNeeded = 5 ; timeOffWork > daysNeeded ? print ( 'Go on vacation' ) : print ( 'Go to work' ) ; var train = 3 ; var car = 2 ; train > car ? print ( 'drive a car' ) : print ( 'buy train tickets' ) ; |
그럼 출력되는 건, Go on vacation과 drive a car가 되겠다.
2-2-6. Which of the Three?
문제다. ternary operator는 어떤 symbol을 사용하는가?
? :
2-2-7. Simpler Math
increment operator '++', decrement operator '--'에 대해 배운다.
지금까지는 x = 5 라고 하고, 그 뒤에 x = x+ 1 ; 이런식으로 수를 더해줬는데, 이를 빠르게 하려면 ++를 쓰라는 의미다.
let x = 5 ; x++ ; print ( 'x is ' + x ) ; x-- ; print ( 'x is now ' + x ) ; |
그럼 x is 6, x is now 5라고 출력되겠다.
2-2-8. Winter Is Coming
Winter is coming이라니. Game of Thrones냐.
이번에는 addition assignment '+=', subtraction assignment '-='를 배운다.
개미는 겨울을 나려고 40개의 씨앗을 모아두었는데 메뚜기는 하나도 없었다. 관대한 개미는 메뚜기에게 10개의 씨앗을 주기로 마음먹었다는 스토리.
이걸 코드로 표현한다면...이라는 예제다.
let ant = 40 ; let gift = 10 ; let grasshopper = 0 ; ant -= gift ; grasshopper += gift ; print ( 'The Ant has ' + ant + ' seeds, and the Grasshopper has ' + grasshopper + ' seeds' ) ; |
단순한 숫자놀음으로 생각하면 쉽겠지만, 수를 새로운 variable로 표현하면서 써내려가다 보니 어려울 수 있겠다.
결국 갖춰야 할 것은 이 Code의 스토리를 읽어나갈 수 있는 능력과 논리다.
2-2-9. More or Less?
자. 그럼 이제 문제. 정답은?
let x = 3 ; x += 2 ; print ( x ) ; |
2-2-10. Used Assignment Operators
지금까지 배운 걸 한번에 표현하는 예제다.
let x = 0 ; x += 10 ; x -= 5 ; x++ ; x-- ; |
정답은 5. 읽으면 산수겠지만, 아무것도 없는 상태에서 이를 풀어나갈 수 있어야 하는게 이걸 배우는 취지다.
2-2-11. Console Loggin'
지금까지 출력하라는 function을 'print( )'로 사용했지만 실제로 출력을 위해 쓰이는 function은 'console.log ( )'라고 한다.
지금까지는 이해도를 높이기 위해 사용되었지만 앞으로는 print 대신 console.log가 사용될 것이다.
console.log는 보통 testing output, view warnings, error messages about the code에 사용된다.
예제는 간단해서 pass
2-2-12. Where to Log?
너무 간단해서 pass.