전체 글 169

[Javascript] 메서드 호출 체이닝 구조 만들기

문제 let ladder = { step: 0, up() { this.step++; }, down() { this.step--; }, showStep: function() { // 사다리에서 몇 번째 단에 올라와 있는지 보여줌 alert( this.step ); } }; 위 코드를 메소드 체이닝 가능하도록 수정하기 실행해야 하는 코드 ladder.up().up().down().showStep(); 해답 let ladder = { step: 0, up() { this.step++; return this; }, down() { this.step--; return this; }, showStep() { alert( this.step ); return this; } } 호출할 때마다 자신을 반환하는 구조를 만듬

Programming/Client 2022.03.08

[Javascript] 거듭제곱 함수 구현

문제 x와 n의 값을 받아서 x의 n 제곱 값을 반환하는 함수 만들기 (n의 값은 1 이상의 자연수일 것) 나의 풀이 function pow(x, n) { if (n < 1) { alert(`${n}은 양의 정수이어야 합니다.`); } else { for (let i = 1; i < n; i++) { x *= x; } return x; } } let x = prompt("x?", ""); let n = prompt("n?", ""); alert(pow(x, n)); 문제점 for문 안의 x를 따로 변수 선언하지 않아 혼동 가능성 있음 거듭제곱 함수 안에 n의 자연수 조건문 분리 필요 해답 function pow(x, n) { let result = x; for (let i = 1; i < n; i++) ..

Programming/Client 2022.03.02

[Javascript] ?나 ||를 사용하여 함수 작성

조건부 연산자 '?' condition ? value1 : value2; condition 만족 시 → value1 반환 / 불만족 → value2 반환 다중 사용 condition ? value2 : value 3; condition ? value1 : 조건에 따라 반환값을 달리하려는 목적으로 만들어짐 간단한 줄 아니고서는 if 사용이 나음 예시 let result; if (a + b < 4) { result = '미만'; } else { result = '이상'; } // let result = (a + b < 4) ? '미만' : '이상'; // 두 개의 코드는 같은 결과 or 연산자 '||' 하나라도 true = true 피연산자가 boolean 아닌 경우 (원래값 반환) 첫 번째 truthy 반..

Programming/Client 2022.03.02

[Javascript] 사용자가 유효한 값을 입력할 때까지 프롬프트 창 띄우기

문제 사용자가 100보다 큰 숫자를 입력하도록 안내하는 프롬프트 창을 띄워보세요. 사용자가 조건에 맞지 않은 값을 입력한 경우 반복문을 사용해 동일한 프롬프트 창을 띄워줍시다. 사용자가 100을 초과하는 숫자를 입력하거나 취소 버튼을 누른 경우, 혹은 아무것도 입력하지 않고 확인 버튼을 누른 경우엔 더는 프롬프트 창을 띄워주지 않아도 됩니다. 사용자가 오직 숫자만 입력한다고 가정하고 답안을 작성하도록 해봅시다. 숫자가 아닌 값이 입력되는 예외 상황은 처리하지 않아도 됩니다. 나의 풀이 let value = prompt("100 이상의 숫자를 입력해주세요.", ""); while (value < 100) { if (value == "" || value == null) break; alert("wrong n..

Programming/Client 2022.02.28

[번역] 토니 모리슨/ 네가 하는 일, 너란 사람

원문 링크 The Work You Do, the Person You Are The pleasure of being necessary to my parents was profound. I was not like the children in folktales: burdensome mouths to feed. www.newyorker.com 직접 번역해서 의역된 부분 많습니다. 수정해야 할 부분이 있다면 댓글 달아주세요. 제가 2달러에 해야했던 일은 방과후에 몇 시간동안 누군가의 집을 청소하는 것이었습니다. 그것은 플라스틱으로 덮인 소파와 의자들, 바닥을 완전히 덮는 파랗고 하얀 카펫, 하얀색 에나멜 난로, 세탁기와 드라이기같이 그 동네에는 흔하지만 저에게는 없는 것들로 이루어진 아름다운 집이었습니다. 전쟁 ..

자료 2022.01.19

[자료] 폴 그레이엄/ 최선을 다한다는 것

원문 링크 How to Work Hard June 2021It might not seem there's much to learn about how to work hard. Anyone who's been to school knows what it entails, even if they chose not to do it. There are 12 year olds who work amazingly hard. And yet when I ask if I know more about working har paulgraham.com veritaholic 님의 번역본 폴 그레이엄 – 최선을 다한다는 것(1/2) | NewsPeppermint (Paul Graham) 원문 보기 최선을 다한다는 것이 무슨 뜻인지는 누구..

자료 2022.01.19

[후기] 90일 독서 챌린지 <투챕터 북클럽>

🌱시작한 계기 구독하고 있는 유튜버가 몇 명 안되는데, 그 중 한 명이 돌돌콩 님이다. 매일 새벽 4시 30분에 일어나 미라클 모닝 루틴을 하며 성실하게 살아가는 모습에 자극받기도 하거니와 그녀가 살고 있는 외국의 고즈넉한 모습이 담긴 영상이 좋다. 그러던 중 한 영상을 봤고, 그녀가 이끄는 을 알게 되었다. https://youtu.be/lFehzTD011I 은 독서습관을 도와주는 모임으로 일주일에 최소 5일, 매일 2챕터 분량의 책을 읽고 인증해야한다. 90일동안 네이버 밴드를 통해 진행되며 유튜브 커뮤니티에 올라온 링크를 통해서 신청 받는다. 현재 친구와 한 달에 한 권씩 책을 읽고, 만나서 토론하고 있는데 그런 약속에도 불구하고 매일 책읽기가 쉽지 않았다. 꾸준히 읽지 못하고 만나기 전에 몰아 읽..

경험·후기 2022.01.19

[후기] 방통대 컴퓨터과학과 첫 학기를 마쳤다

🌱입학 준비 개발자의 길을 걷기로 다짐하고 나서 프로그래밍 언어를 배우는 동안 학사도 같이 따면 좋을 것 같아 작년 9월에 방통대 컴퓨터과학과 3학년으로 편입하게 되었다. (3학년 편입은 4년제나 2년제의 학사가 있는 경우 가능하다.) 컴퓨터과학과의 전공들은 대부분 선수과목이 있어서 차례대로 듣는 것이 좋은데, 2학기에 편입한다면 커리큘럼을 정석대로 짜기는 불가하다. 왜냐하면 2학기에 들을 수 있는 자료구조나 프로그래밍언어론은 c언어가 베이스인데, c프로그래밍은 1학기에 들을 수 있기 때문이다. 그래서 나는 최대한 c프로그래밍이 필요없는 과목 위주로 수강 계획을 세웠다. 나의 수강 계획표 그나마 c언어를 몰라도 들을만하다는 자료구조까지 추가하니 컴퓨터과학개론/ 멀티미디어시스템/ 자료구조 이렇게 세 과목 ..

경험·후기 2022.01.19