반응형

js 16

JS에서의 this란 무엇일까?

MDN에서 function.prototype.apply()에 대해 공부하면서 폭풍 검색을 하던 중 this에 대해 공부하게 되었다. this는 메소드를 호출한 객체를 담는 속성이다. this를 함수의 이자로 넘기어 this의 값들을 사용하고, 변경할 수 있다는 것이다. 또한 메소드를 호출한 객체가 무엇이냐에 따라 value와 this.value가 같을 수도, 달라질 수도 있다. this가 만들어지는 5가지의 경우를 통해 이해해보려고 한다. 일반 함수에서의 this 중첩 함수에서의 this 이벤트에서의 this 메소드에서의 this 메소드 내부의 중첩 함수에서의 this 1. 일반 함수에서의 this var value = 10; function case1 () { this.value = 11; value ..

IT/JS 2021.07.26

코딩할때 개선할 점 모음

불필요한 주석 제거한다. 꼭 필요한 것이 아니라면 주석 달지 않도록 한다! 변수 정의할 때 var 사용 자제한다. const, let이 나온 이후 var은 잘 사용하지 않는다. 함수 안에서, 밖에서 재할당 되는 값인지 생각하고 일관성을 갖자. 변수의 이름을 지을 때, 제 3자가 봐도 쉽게 이해할 수 있도록 작성하자. 변수의 이름이 길어지는 것에 두려워말자! 할당된 변수는 재할당하지 않는다. 코드가 길고 복잡한 경우, 예상치 못한 결과가 발생될 수 있다! class name을 작성할 때, camel case가 아닌 kebab case로 작성한다. 일반적인 컨벤션이라고 한다! 가독성에 신경쓰자. 책을 쓴다고 생각하자! 함수를 빠져나올 때는 return! 함수 안에 for문에서 볼일 다 봤으면(?) retur..

IT/JS 2021.07.24

프로그래머스) 문자열 내 p와 y의 개수

https://programmers.co.kr/learn/courses/30/lessons/12916 코딩테스트 연습 - 문자열 내 p와 y의 개수 대문자와 소문자가 섞여있는 문자열 s가 주어집니다. s에 'p'의 개수와 'y'의 개수를 비교해 같으면 True, 다르면 False를 return 하는 solution를 완성하세요. 'p', 'y' 모두 하나도 없는 경우는 항상 True를 programmers.co.kr 문제 설명 대문자와 소문자가 섞여있는 문자열 s가 주어집니다. s에 'p'의 개수와 'y'의 개수를 비교해 같으면 True, 다르면 False를 return 하는 solution를 완성하세요. 'p', 'y' 모두 하나도 없는 경우는 항상 True를 리턴합니다. 단, 개수를 비교할 때 대문자..

IT/Algorithm 2021.06.18

캘린더 만들기

TODO 오늘의 현재 요일 표기 오늘의 현재 날짜 표기 오늘의 현재 월 표기 오늘의 현재 연도 표기 일, 월, 화, 수, 목, 금, 토 요일 라벨링 표기 현재 월의 1일이 무슨 요일인지 판별하고, 해당 요일 라벨링에 1일 표기하기 현재 월의 마지막 날짜까지 달력에 표기하기 우측 화살표를 클릭 했을때, 다음 달의 요일 및 날짜 표기 좌측 화살표를 클릭 했을때, 이전 달의 요일 및 날짜 표기 특정 날짜를 클릭 했을때, 상단의 요일 및 날짜 반영하기 오늘의 종합적인 날짜를 구하려면 new Date 오브젝트를 활용. 개발자 도구의 콘솔을 확인해보니 Day와 Month는 숫자로 되어있음. -> 숫자에 대응하는 문자열로 변환하기 위해 Day, Month에 대한 배열을 생성 Day 배열과 반복문으로 라벨링 표기 ->..

IT/Project 2021.06.04

코딩테스트 연습 > 2019 카카오 개발자 겨울 인턴십 > 크레인 인형뽑기 게임

풀어보았다! function solution(board, moves) { const box = []; const trash = []; for(let i = 0 ; i < moves.length ; i++){ for(let j = 0 ; j < board.length ; j++){ var rowS = board[j][moves[i]-1];//변하는 값이므로 var로 지정 if(rowS !== 0){ box.push(rowS);//인형 넣는 곳 board[j][moves[i]-1] = 0;//인형이 있었던 곳 빈 자리 만들기 break;//inner 반복문 종료 } } } for(let k = 0 ; k < box.length ; k++){ if(box[k] === box[k-1]){ trash.push(b..

IT/Algorithm 2021.05.29

클론코딩 유튜브 사이트 따라 만들기 드림코딩 by 엘리 영상 참고

www.youtube.com/watch?v=67stn7Pu7s4&list=PLv2d7VI9OotQ1F92Jp9Ce7ovHEsuRQB3Y&index=15 다른 사람들은 길어봐야 3시간 걸렸던 코딩을 나는 7시간은 한 것 같다.. 밤을 새 버려서 너무 피곤하지만 그만큼 얻어가는 부분이 참 많다. wirefram 구축부터 아직 이해하지 못한 JS를 통한 동적 할당까지.. 코딩을 하면 할수록 배울 것이 이곳저곳에서 튀어나온다. 코딩 과정을 전부 나열하기에는 효율이 많이 떨어지는 것 같아서 내가 인지한 실수와 발생한 문제를 기록해보려 한다. 바로 html 마크업 시 클래스 지정에 규칙성이 없는 점이다. 이로 인해 발생한 문제는 css 코딩 시에 강의 영상의 말미에서 더 이상 참고를 하지 못하게 되는 것이었다. 막..

IT/Project 2021.05.01
반응형