분류 전체보기 (102) 썸네일형 리스트형 [JavaScript] 오버로딩 자바스크립트에서는 오버로딩 기능을 제공하지 않는다. (매개변수 형태가 다른 함수여도) 동일한 이름의 함수가 정의되면, 함수가 재정의된다. 책에서 보니 함수 이름 충돌때문에, 내부 함수로 많이 사용한다고 적혀져 있었다. 그럼 오버로딩 기능은 사용할 수 없는 건가? 궁금해서 찾아보니 변수 arguments 를 사용하여 오버로딩 기능을 구현할 수 있었다. 변수 arguments 는 모든 전달인자를 받는 배열이다. 따라서 arguments의 크기에 따라 다른 처리를 해주면 된다. [JavaScript] 가변 인자 함수 가변 인자 함수는 매개변수의 개수가 변할 수 있는 함수를 말한다. 위에 정의된 func 함수는 매개변수가 없다. 하지만 자바스크립트의 모든 함수는 내부에 기본적으로 변수 arguments가 있다. arguments는 매개변수의 배열을 나타낸다. 따라서 아래와 같은 코드 작성이 가능하다. [JavaScript] 선언적 함수 아래와 같은 방식으로 생성한 함수를 선언적 함수라고 한다. function func() { } 자바스크립트에서는 동일한 이름의 함수를 정의할 수 있다. 위와 같이 정의해도 오류가 발생하지 않으며, func()은 재정의된다. 따라서 마지막에 함수를 실행하게 되면 '함수 B'가 출력하게 된다. 마찬가지로 익명 함수를 재정의 하여도 오류가 발생하지 않는다. 결과는 위와 같다. 변수를 선언하기 이전에 함수를 먼저 호출하면 오류가 발생한다. 하지만 선언적 함수를 사용하면 오류가 발생하지 않는다. 웹 브라우저는 script 태그 내부의 내용을 한 줄 씩 읽기 전에 선언적 함수부터 읽는다. 따라서 func() 함수 호출은 제일 마지막에 실행된다. [JavaScript] 비교 연산자와 일치 연산자 자바스크립트를 공부하면서 이해가 안됐던 것?, 처음 보았던 것이 일치 연산자이다. 비교 연산자 == 위 코드의 결과는 모두 true이다. 자동으로 자료형이 변환이 되기 때문이다.. 일치 연산자 === 일치 연산자를 사용하게 되면 값 뿐만 아니라 자료형이 같은지도 비교하게 된다. 따라서 위 결과는 모두 false이다. [Web] Webpack이란? 웹을 공부하다보니 처음보는 용어들이 많았다. 설명만 보니까 굳이 이게 왜 필요하지? 에 대한 의문이 많이 들었다. 첫 번째로 찾아본 것이 Webpack인데, 아래 사이트가 제일 쉽게 설명이 잘 되어있는 것 같다. https://nesoy.github.io/articles/2019-02/Webpack Webpack이란? nesoy.github.io [백준] 14501번: 퇴사 문제링크 : https://www.acmicpc.net/problem/14501 문제풀이 동적계획법으로 풀 수 있는 문제이다. 1일까지 상담했을 때 최대 금액, 2일까지 상담했을 때 최대 금액을 차례로 더하여 저장해놓는다. 1) 1일까지 상담했을 때 최대 금액은 10이다. 2) (2일을 포함하여) 2일까지 상담했을 때 최대 금액은 20이다. 왜냐하면 1일에 상담을 받으면 3일이 걸려 2일에는 상담을 받을 수 없기 때문이다. 3) (3일을 포함하여) 3일까지 상담했을 때 최대 금액은 10이다. 왜냐하면 1일에 상담을 받으면 3일이 걸려 3일에는 상담을 받을 수 없고, 마찬가지로 2일에도 상담을 받으면 5일이 걸려 3일에 상담을 받을 수 없다. 4) (4일을 포함하여) 4일까지 상담했을 때 최대 금액은 30.. [백준] 4447번: 좋은놈 나쁜놈 문제링크 : https://www.acmicpc.net/problem/4447 문제풀이 입력받은 히어로의 이름에 'G', 'g', 'B', 'b'의 개수를 센다. String으로 받아 charAt()으로 문자 하나씩 확인하여 개수를 확인한다. 'g'와 'b'의 개수가 같으면 "GOOD", 'b'가 더 많으면 "A BADDY", 적으면 "NEUTRAL"을 붙여서 출력한다. 소스코드 package baekjoon; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class P4447 { public static void main(String[] args) throws IOExce.. [백준] 7785번: 회사에 있는 사람 문제링크 : https://www.acmicpc.net/problem/7785 문제풀이 문제만 처음 보고서는 쉬운 문제인 줄 알았는데, 시간초과가 문제였다. (N 0) { String str = br.readLine(); StringTokenizer st = new StringTokenizer(str); String name = st.nextToken(); String inout = st.nextToken(); if (inout.equals("enter")) { log.put(name, true); } else { log.put(name, false); } } Iterator iterator = log.keySet().iterator(); while (iterator.hasNext()) { String .. 이전 1 2 3 4 5 6 ··· 13 다음 목록 더보기