분류 전체보기

    자바스크립트 - 브라우저와 관련된 객체 (window,document, ...)

    자바스크립트 - 브라우저와 관련된 객체 (window,document, ...)

    브라우저와 관련된 객체 종류 설명 window 브라우저 창이 열릴 때마다 생성됨. 최상위 객체 document 웹 문서마다 하나씩 있음. 태그 만나면 생성된다. HTML문서 정보 담김 navigator 현재 사용하는 브라우저 정보가 담김 history 현재 창에서 사용자 방문 기록을 저장 location 현재 페이지의 URL 정보 담김 screen 현재 사용하는 화면 정보를 다룸

    자바스크립트 - 이벤트 함수, 이벤트 처리기

    자바스크립트 - 이벤트 함수, 이벤트 처리기

    이벤트 함수 이벤트는 브라우저나 사용자가 행하는 어떤 행동이다. 아래의 이벤트들이 존재한다. 마우스 이벤트 종류 설명 click HTML 요소 클릭시 발생 dbclick HTML 요소 더블 클릭시 발생 mousedown HTML 요소 위에서 마우스 버튼 눌렀을 때 mouseup HTML 요소 위에서 마우스 버튼 뗄 때 mousemove HTML 요소 위에서 마우스 버튼 움직였을 때 mouseover HTML 요소 위에 마우스 포인터 올라갈 때 mouseout HTML 요소 위에서 마우스 포인터 벗어날 때 키보드 이벤트 종류 설명 keydown 사용자가 키 누르는 동안 발생 keypress 사용자가 키 눌렀을 때 발생 keyup 사용자가 키 뗄 때 발생 문서 로딩 이벤트 종류 설명 abort 문서가 완전히..

    자바스크립트 - 코딩 컨벤션

    자바스크립트 - 코딩 컨벤션

    이 게시물은 구글 자바스크립트 스타일 가이드를 따른다. Google JavaScript Style Guide Google JavaScript Style Guide 1 Introduction This document serves as the complete definition of Google’s coding standards for source code in the JavaScript programming language. A JavaScript source file is described as being in Google Style if and only i google.github.io 코드는 Tab 대신 Space 2칸 들여쓰기 권장 if (...) { something... } var 사용 금지, ..

    2021.08.28 사는 이야기 (퇴근 후 공부하기)

    오늘의 이야기 : 퇴근 후 공부하기 2021.08.22(일) 부터 알고리즘 공부를 다시 시작하기 위하여 매일 백준 5문제 (문자열, 그리드, DP, 그래프탐색, 구현 1문제 씩) 풀고 개인 github에 commit 하자는 약속을 세웠다. 그리고 하는 김에 github도 너무 더럽게 썼어서 포트폴리오 용으로 제출하기 민망해서 새로 만들었다. 처음엔 5문제 빠르게 해치우고 JS, React 공부를하려했는데 너무 오래 쉰 탓인지... 도저히 지금 상태로는 퇴근 후 CS 5문제 + 추가 공부를 소화해낼 수 없는 상태가 되어버렸다!! 한 8시 부터 시작하면 빠르면 11시, 12시, 1시, 심지어 2시 까지도 붙잡고 있었던 적도 있다. 2시에 잤던 그 날의 다음 날 아침에 엄~청 늦잠 자서 늦게 출근했다. 옛날엔..

    파이썬(python) 가장 긴 증가하는 부분수열 (LIS)

    파이썬(python) 가장 긴 증가하는 부분수열 (LIS)

    가장 긴 증가하는 부분수열 (LIS) 알고리즘 분류 : 동적계획법 설명 [3,5,7,9,2,1,4,8] 과 같은 하나의 수열은 여러 부분수열로 나눌 수 있다. ex) [3,5], [5,7], [9,2,1,4], [1,4,8] 그 부분수열의 처음~끝까지 증가하는 횟수가 몇번이 되는지 count 하였을때 가장 횟수가 많은 부분수열을 구하는 문제다. [3,5] = 2회 [3,5,7] = 3회 [3,5,7,9] = 4회 [2,1,4] = 2회 아이디어 [3,5,7,1] 라는 수열의 LIS를 구해보자. 무지성 야생의 힘으로 덤벼보자. 모든 부분수열을 구해서 그 중에서 LIS를 구한다. [3], [5], [7], [1], [3,5], [5,7], [7,1] [3,5,7], [3,5,1], [5,7,1], [3,5,..

    2021.08.22 사는 이야기 (2021 카카오 공채, 이직결심)

    2021년 카카오 공채가 열렸습니다. 지원 기간 : 2021.08.19(목) 11:00 ~ 09.06(월) 17:00 https://careers.kakao.com/2022-developer 2022 카카오 신입개발자 블라인드 채용 카카오에서 더나은 세상을 함께 만들어 봐요 careers.kakao.com 2019년에 카카오 공채에 C++로 도전하였던 기억이 나네요. 살면서 알고리즘 제일 열심히 했던 시절이었는데도 1차에서 광탈했습니다. 그때 주 언어가 python이었다면, 독학이 아닌 제대로 된 교육을 받으며 공부 기간이 더 길었다면 어땠을까 하는 아쉬운 마음이 가득했습니다. 그때 카카오 떨어지고 운좋게 다른 대기업에 덜컥 취업을 해서 2년이나 지나버렸네요. 2년간 정말 후회도 많이하고 배운것도 많고 ..

    자바스크립트 - Generator

    자바스크립트 - Generator

    Generator는 작업 도중에 다른 작업을 하다가 다시 돌아왔을때 이전 작업부터 이어서 진행할 수 있게 해준다. 개념 자체는 다른 대부분의 언어에도 있으니 여러 언어를 공부하신 분들은 이미 아실거다. Generator 는 iterable이다. 순회(차례로 진행) 가능한 객체다. for of 문으로 전체 순회가능하다. iterable은 Symbol.iterator() 메소드가 있고, 이 메소드는 iterator를 반환해야 한다. iterator는 next() 메소드를 가진다. 이 메소드는 value, done 속성을 가진 객체 반환한다. 작업 끝나면 done=true가 된다. for of 문은 iterable 객체여야 사용가능하며, Array, Map, Set, String, TypedArray, arg..

    자바스크립트 - 프로미스 (promise)

    자바스크립트 - 프로미스 (promise)

    프로미스 (promise) 프로미스는 콜백 함수이다. 특정 함수의 성공(resolve) 또는 실패(reject) 된 경우에 알맞은 함수를 실행할 수 있게 해준다. const pr = new Promise((resolve, reject) => { resolve('success!'); reject(new Error(''error!')); }); pr.then( # then함수에 resolve/reject가 일어났을때 일어날 함수 작성 function(result){} # 성공한 경우 ).catch( function(err){} # 실패한 경우 ).finally( function(){} # 마지막에 반드시 수행되야 하는 작업 작성 ) 프로미스 체이닝 Promise.all() 한꺼번에 프로미스를 실행하여 모두 ..

    자바스크립트 - 클래스 (class)

    자바스크립트 - 클래스 (class)

    클래스 (class) class Player{ constructor(hp, power){ 생성자 this.hp=hp; this.power=power; } showInfo(){ console.log(this.hp, this.power); } } const player1 = new Player(100,100); class healer extends Player{ constructor(hp,power,mp){ # 생성자를 명시하지 않아도 있는 것 처럼 작동은 됨. super(hp,power); # 부모 생성자를 먼저 호출해야 함. this.mp = mp; } heal(){ console.log('heal'); } showInfo(){ super.showInfo(); # 메소드 오버라이딩한 경우 부모 함수 호출..

    자바스크립트 - call, apply, bind

    자바스크립트 - call, apply, bind

    call, apply, bind 객체 밖에 선언된 함수가 특정 객체의 프로퍼티를 다룰때 사용된다. 객체 밖에 선언되어 있으니 함수 내의 this가 무엇인지를 알 수 없는 상태인데 call/apply/bind 함수를 사용하여 this가 누군지 명시적으로 알려줄 수 있다. call 인수를 개별적으로 받는다. const user1={ name:"sponge", }; const user2={ name:"bob", }; function showInfo(){ console.log(this.name); } showInfo.call(user1); → this에 user1 객체 들어감 showInfo.call(user2); → this에 user2 객체 들어감 function changeInfo(age, gender){..