728x90
반응형

자바스크립트 9

프로그래머스 - Level 1. 햄버거 만들기 / JavaScript (js)

문제설명 문제분석 이 문제는 입력값인 ingredient 요소를 하나씩 stack에 쌓고, stack에 쌓인 최근 4개가 햄버거를 만들 수 있는 순서대로 쌓여있는지 확인합니다. 만약 햄버거를 만들 수 있다면, stack의 4개를 빼내고 answer 카운트를 1증가합니다. ingredient를 탐색하며 stack에 하나씩 추가한다. stack에 쌓인 최근 4개의 요소로 햄버거를 만들 수 있는지 검사한다. 햄버거를 만들 수 있다면 stack의 최근 4개 요소를 제거하고, answer를 증가한다. 요약했으니, 코드를 짜보겠습니다. 이해하기 쉽게 코드작성하기 function solution(ingredient) { var answer = 0; const stack = []; for(let i of ingredi..

프로그래머스 - Level 1. 최소직사각형 / JavaScript (js)

문제설명 - 최소직사각형 문제분석 모든 명함에는 가로길이와 세로길이가 존재하며, 가로 또는 세로의 길이가 각각 가장 긴 명함의 변을 구해 가장 작은 지갑의 면적을 리턴하는 문제이다. 말이 조금 어려운 거 같아서 풀어보자면 다음과 같다. 모든 명함에는 가로길이와 세로길이가 있다. 일반적인 명한은 가로 길이가 더 길지만, 간혹 세로길이가 더 긴 명함도 존재한다. 세로길이가 더 긴 명함을 옆으로 돌려서(세로길이와 가로길이를 스왑해서) 보관할 수 있다. 위 모든 경우를 포함하는 동시에, 입력된 모든 크기의 명함을 보관할 수 있는 가장 작은 지갑을 만들어야 한다. 결과값은 명함의 가장 긴 가로길이 x 가장 긴 세로길이여야 한다. (이때 3번이 이미 적용된 상태여야 한다.) 문제를 단순화 했으니 이해하기 쉽게 코드..

20200807

오늘은 몸이 축 쳐져서 힘들었다. 휴식이 필요한 상태라고 몸이 아우성치는 듯하다. 8월 07일 (금) Today I Learned 오늘은 클래스에 대해 공부하였다 클래스에 대해 학습하고 Array()를 만들어보려고 시도했으나, 예약어에게 덤빈 결과로 큰코다쳤다. 짭Array()를 만들기로 결정하였다. 주말 중에 클래스에 관련된 내용을 정리할 예정이다. 오늘 컨디션이 굉장히 안좋았다. 타이레놀을 아침, 점심, 저녁에 2알씩 먹었다. 휴식이 필요하다고 몸이 알려주는 것 같으니 이번 주말에는 휴식을 겸해야겠다. Tomorrow I'll Learn 리액트 클론코딩 다시해보기

Today I Learned 2020.08.07

[JavaScript] Scope & Closure ( 스코프와 클로저 )

클로저를 이해하는 데 오래 걸렸다. 그냥 딱 눈에 들어오는 게 아니라, 신경 써서 봐야 보였다. 근데 오늘 죽치고 보고 있으니까 제법 눈에 들어온다. 오늘은 스코프와 클로저에 대해 정리해보자. 시작하기에 앞서, 짧고 강렬하고 쉽게 이해할 수 있는 정리 함수를 선언하는 것은 연예인과 같다. 불러주지않으면 아무것도 하지 않는다. 연예인을 불러주면 ( 함수를 호출하면 ) 그 때에서야 방송에 연예인이 활동 ( 함수가 실행 ) 된다. 그래서 스코프나, 클로져를 구분할 때에 함수를 호출하는 부분부터 보면 이해가 쉽다. 아래의 예제를 호출부터 보도록 하자. var x = '유재석'; var y = '이효리'; var z = '비'; function 놀면뭐하니 (name) { // 3번: x가 name자리에 파라미터로..

JavaScript 2020.08.06

[JavaScript] 배열과 객체

배열과 객체, 그리고 이를 다루는 각종 method는 JavaScript의 꽃이다. 어떤 상황에 어떤 메소드를 활용하느냐에 따라 코딩효율이 어마어마하게 차이가 난다!! 오늘은 객체와 배열에 대해 먼저 정리해보겠다. 내일은, 문제를 풀 때 사용했던 각종 method를 정리할 예정이다. 배열 ( Array ) 배열은 쉽게 말해 변수 혹은 상수의 묶음이다. 아래의 예를 보자. let array = [ 1, // typeof(1) === 'number' true, // typeof(true) === 'boolean' 'gray', // typeof('gray') === 'string' undefined, // typeof(undefined) === undefined { // object // typeof(obj..

JavaScript 2020.07.30

20200728

페어 프로그래밍은 쉽지 않다는 걸 깨달았다...! 어제 페어 게임을 하면서 어렴풋이 느꼈던 다른 사람의 말을 온전히 이해한다는 것은 결단코 쉬운 일이 아니었다. 그렇지만, 서로 대화를 나누며 답을 찾아가는 과정에서 분명 조금이나마 커뮤니케이션 능력이 오른 거 같아 만족!! 7월 28일 (화) Today I Learned 오늘은 2일차로 가장 기본적인 조건문과 문자열에 대해 공부하였다 조건문과 문자열에 대해 학습하고 폴빈님과 페어 프로그래밍을 진행하였고, 관련 내용을 정리했다. Tomorrow I'll Learn 반복문에 대해 학습하고 폴빈님과 페어 프로그래밍을 진행하고, 관련 내용을 정리

Today I Learned 2020.07.28

[JavaScript] 조건문, 문자열

코딩 기초 중 로직의 시작을 알리는 조건문과 배열에 앞서 익히게 되는 문자열에 대해 학습했다. 조건문 자바스크립트의 조건문은 다른 언어와 비슷하다. if (condition) // condition은 항상 Boolean 값으로, 참/거짓 (True/False) 판별이 가능해야 한다. { statement; // condition을 만족하는 경우에만 내부의 statement가 동작한다. } 위에서 보다시피, 조건문은 참/거짓을 판별하는 condition을 포함하여야 하며 condition이 참(true)일 경우에만 내부의 statement가 동작한다. 이번에 JS에서 조건문을 다루던 중 재밌었던 점은 바로 NaN이라는 친구다. 이 친구는 Not-a-Number의 줄임말로, 표현할 수 없는 숫자이며 자기 자..

JavaScript 2020.07.28

[JavaScript] 변수, 함수, 타입

코드 스테이츠에서 처음으로 배우는 게 변수라서 좀 놀랐다! 아무래도 비전공이신 분들도 많을텐데 'Hello World'를 출력하지 않는 강의라니, 흥미롭다...! 참고로 'Hello World'는 크롭 개발자도구 - Console 탭에서 console.log('Hello World');를 입력하고 Enter를 치면 결과를 확인할 수 있다. 변수 변수의 선언과 할당은 아래와 같이 작성한다. let myName; // 선언 myName = 'Gray'; // 할당 다른 언어와 마찬가지로 당연히 함께 작성할 수도 있다. let myName = 'Gray'; // 변수 선언 및 할당 강의에는 포함되지 않지만 JavaScript에는 let말고 var과 const라는 선언방식도 있다. let number1 = 1;..

JavaScript 2020.07.27

20200727

블로그는 처음이라 차차 나아지겠지...라는 생각으로 시작합니다! 7월 27일 (월) Today I Learned 오늘은 1일차로 가장 기본적인 JS 문법에 대해 공부하였다 변수, 함수, 타입에 대해 학습하고 폴빈님과 페어 프로그래밍을 진행하였고, 관련 내용을 정리했다. Tomorrow I'll Learn 조건문, 문자열에 대해 학습하고 폴빈님과 페어 프로그래밍을 진행하고, 관련 내용을 정리

Today I Learned 2020.07.27
728x90
반응형