본문 바로가기

전체 글138

[패스트캠퍼스 수강 후기] 프론트엔드 인강 100% 환급 챌린지 9회차 미션 함수를 만드는 또한가지 방법 const hello = new Function(); 생성자로 함수를 만드는 방법 생성자 함수 new function으로생성하여 특정변수 hello에 할당하는 방법이다. 잘 쓰이는 방법은 아니다. const sum = new Function('a', 'b','c','return a + b + c');//매개변수와 body가 문자열형태로 들어감 console.log(sum(1,2,3)); 선언적 함수 방식을 사용하는것이 아니기 때문에 hoisting 불가능함. function 과 new Function(); 의 차이점 { const a = 1; const test = new Function('return a'); // 여기 까지만 보면 a = 1 의 값을 new Function.. 2020. 9. 15.
[패스트캠퍼스 수강 후기] 프론트엔드 인강 100% 환급 챌린지 8회차 미션 반복문 while 과 함수 자바스크립트의 반복문에는 for뿐만아니라 while을 사용하는 방법도 있다. while(조건){ 조건이 거짓이 될 때까지 반복 실행 } //while 무한 루프 while(true){ console.log('hi'); if(Math.random() * 100 > 90 ){ break; } } 해당 코드는 Math.random() 함수에 의해 랜덤 값이 일정 조건에 만족하면 break되는 루프문이다. while문에는 do~while문이 있다. do{ 조건이 거짓이 될 때까지 반복 실행 }while(조건); while문과의 차이는 while은 조건을 먼저 판단하여 아에 실행이 안될 수 있지만 do while은 무조건 한번은 실행하고 조건을 검사하게 된다. do{ console.lo.. 2020. 9. 14.
[패스트캠퍼스 수강 후기] 프론트엔드 인강 100% 환급 챌린지 7회차 미션 삼항 연산자를 이용한 조건부 실행 삼항연산자 조건 ? 참이면 실행되는 표현식 : 거짓이면 실행되는 표현식 중괄호 {} 를 사용할 수 없는 문법이기 때문에 하나의 표현식만 가능하다. 예제 let n = 5; console.log( n % 5 === 0 ? '5의 배수입니다' : '5의 배수가 아닙니다.' ); switch를 이용한 조건문 if와는 달리 어떤 표현식이 참인지 거짓인지를 보다는 어떤 값인지 체크해서 맞으면 실행되는 블럭들을 설정한다. switch 뒤 괄호 안에 있는 값이 무엇인지 중괄호 안에 있는 코드들을 비교해서 실행한다. 이중에 default : 뒤에있는 문장은 항상 참이어서 실행되는 블럭이다. let n = 5; switch(n % 5){ case 0 : { console.log('5의 .. 2020. 9. 13.
[패스트캠퍼스 수강 후기] 프론트엔드 인강 100% 환급 챌린지 6회차 미션 조건문(conditional Statement) 표현식이 참으로 평가될 때 , 실행되는 블럭 if (true){ //표현식이 true이기 때문에 항상 실행됨 console.log('항상 실행'); } if(fasle){ console.log('항상 실행 x'); ////표현식이 false이기 때문에 항상 실행 안 됨 } 코드가 한 줄이면 { }를 사용하지 않아도 된다. if (true) console.log('실행'); 표현식이 거짓으로 평가될 때 Falsy false, 0, '', null, undefined, NaN 표현식이 참으로 평가될 때 Truethy falsy의 반대 : true, 1, '문자열', {} , [] falsy 한 값은 출력이 안되고 truethy 한 값만 출력될 것이다. else.. 2020. 9. 12.
[패스트캠퍼스 수강 후기] 프론트엔드 인강 100% 환급 챌린지 5회차 미션 Hoisting 호이스팅(hoisting)은 ECMAScript® 2015 언어 명세 및 그 이전 표준 명세에서 사용된 적이 없는 용어입니다. 호이스팅은 JavaScript에서 실행 콘텍스트(특히 생성 및 실행 단계)가 어떻게 동작하는가에 대한 일반적인 생각으로 여겨집니다. 하지만 호이스팅은 오해로 이어질 수 있습니다. 예를 들어, 호이스팅을 변수 및 함수 선언이 물리적으로 작성한 코드의 상단으로 옮겨지는 것으로 가르치지만, 실제로는 그렇지 않습니다. 변수 및 함수 선언은 컴파일 단계에서 메모리에 저장되지만, 코드에서 입력한 위치와 정확히 일치한 곳에 있습니다. 출처 - https://developer.mozilla.org/ko/docs/Glossary/Hoisting function x(){ conso.. 2020. 9. 11.
[패스트캠퍼스 수강 후기] 프론트엔드 인강 100% 환급 챌린지 4 회차 미션 변수와 상수 프로그래밍시 중요한역할을 한다. 프로그래밍이 실행되면서 프로그램이 사용되는 값들을 잠시 메모리에 보관했다가 다시 값을 사용할 때 보관소 역할을 한다. if (( 5 + 10 ) % 3 === 0){ console.log('안녕하3'); } if (( 5 + 10 ) % 3 === 0){ console.log('5구5구~'); } 해당 코드를 볼 때 5 + 10 을 누군가 입력한 값으로 사용한다고 가정을 해보자. 해당 코드에서 ( ) 의 값이 어떤 숫자가 올지 모르는 상황이라고 가정을 하는 것이다. 이 조건문에서 매번 5 + 10 의 결과를 계산 할 필요없이 ( ) 사이에 올 값을 어디엔가 보관해 두면 첫째로 이 코드가 의미하는 바가 정확해지고 컴퓨터가 불필요한 일을 하지 않을 수 있다. 이럴.. 2020. 9. 10.
[패스트캠퍼스 수강 후기] 프론트엔드 인강 100% 환급 챌린지 3 회차 미션 keywords 특정 목적을 위해 사용하는 단어 이런 keywords는 예약어로 지정되어있다. var name = "jiwon"; // var 라는 단어는 변수선언을 위해 사용되는 keyword 이다. Reserved Words (예약어) 예약어란? var 처럼 프로그램 작성시에 변수명,함수명으로 사용할 수 없는 단어를 예약어라고 한다. for, if , return 등등 예약어로 지정된 keyword들은 function var(){ ... } 와 같이 사용이 불가능하다. 예약어 목록 Future reserved keywrords 앞으로 특정 목적을 위해 사용할가능성이 있어 사용할 수 없는 예약어 식별자 ( Identifier ) 코드 내의 변수, 함수, 혹은 속성을 식별하는 문자열 var name = .. 2020. 9. 9.
[패스트캠퍼스 수강 후기] 프론트엔드 인강 100% 환급 챌린지 2 회차 미션 자바스크립트라는 프로그래밍 언어는 스크립트 언어이다. JAVA 와는 전혀 관련이 없는 언어로 스크립트언어는 어플리케이션에서 해당 스크립트를 해석하고 실행할 수 있는 엔진이 존재해 이 스크립트로 해당 어플리케이션을 제어하기 위한 용도로 사용되는 프로그래밍 언어이다. 자바스크립트 엔진은 소스코드를 한 줄 한 줄 해석해서 바로 실행하는데 이런 특성을 가진 프로그래밍언어를 인터프리터 언어라고한다. 자바스크립트는 스크립트언어와 인터프리터 언어의 두가지 특징을 가진 언어이다. 자바스크립트를 해석하고 실행시키는 엔진은 바로 웹 브라우져이다. 브라우저가 좋아지고 사용자의 눈이 높아지며 자바스크립트의 역할은 매우 커졌다. 크롬 브라우저에서 사용하는 자바스크립트 엔진을 이용해서 서버사이드 어플리케이션을 만들 수 있는 no.. 2020. 9. 8.
[패스트캠퍼스 수강 후기] 프론트엔드 인강 100% 환급 챌린지 1 회차 미션 HTML CSS JS 개요 웹을 구성하는 HTML, CSS, JS의 이해와 학습은 단지 기술을 배우는 것으로 그치지 웹과 모바일, IT 전반의 과거, 현재, 미래를 이해하는데 도움이 된다. 실무적으로 Product를 보다 구조적 관점에서 볼 수 있는 능력을 키울 수 있다. HTML - HTML은 페이지에 표시되는 제목,문단,표, 이미지 등을 정의하고 구조와 의미를 부여하고 웹의 구조를 만드는 언어이다. 웹 브라우저 위에서 동작하는 언어이다. 온전히 Semantic을 만드는것에 집중해야 한다. HyperText : 문서와문서가 링크로 연결되어있음. Markup : 태그로 이뤄져 있다. Language : 언어 의 의미를 담은 약자이다. CSS - CSS는 HTML, XML 같은 Markup language.. 2020. 9. 7.
백준 1110번 파이썬 : 더하기 사이클 해당 문제는 입력받은 숫자를 10의 자리와 1의 자리로 나눠서 1의자리값과 10의자리와 1의자리를 더한 값의 1의자리를 계속해서 더해나가다 처음의 숫자를 찾아내는 문제이다. import sys count = 0 n = num = int(sys.stdin.readline()) while(True): ten = n // 10 one = n % 10 total = ten + one count += 1 n = int(str(n % 10) + str(total % 10)) if (num == n): break print(count) 우선 입력 받은 값을 두개의 변수에 할당한다. 하나는 자릿수로 나눠담을 변수고, 하나는 끝에 찾아낼 변수 그다음 while문 내부에 10의자리를 담을 ten 에는 n을 10으로 나눠 .. 2020. 8. 14.
[python] sys.stdin 과(vs) sys.stdin.readline() 차이 파이썬의 sys모듈 stdin은 표준 입력에서 사용된다. 내부적으로 input() 함수를 호출하고 입력 문자열에는 개행문자 (\n)가 추가된다. 그럼 sys.stdin 과 sys.stdin.readline의 차이는? import sys for line in sys.stdin: if (line == "\n"): #파일 끝내기 break print(line ,end="") 앞서 말했 듯 입력 문자열에 개행문자가 추가되어 출력될때 print와 함께 개행하여 2줄씩 개행되는것을 막기 위해 end="" 를 사용하여 print 의 자체 개행을 없앴다. sys.stdin 은 입력 문자열을 line으로 받아오는 것을 볼 수 있었다. import sys for line in sys.stdin.readline(): if .. 2020. 8. 14.
백준 10952번 파이썬 (python) : A+B - 4 10951 번문제와 상당히 비슷해 보이는 문제이지만. 이번엔 입력의 끝을 구분해서 계산을 끝내는 문제이다. 코드 import sys for line in sys.stdin: A,B = map(int,line.split()) print(A+B) 이런식으로 제출해도 문제는 맞은걸로 처리는된다. 다만 ValueError 가 발생 하는 것이 마음에 들지 않았다. [for문에서 sys.stdin 을 사용하는 이유는 따로 게시함.] import sys while(True): try: A,B = map(int,sys.stdin.readline().split()) print(A+B) except ValueError: break 그래서 나는 try except 를 사용해서 문제를 해결했다. 결과는 통과. 2020. 8. 14.