Coding 🖐🏻/javascript 16

프로그래머스 자바스크립트 |정수 내림차순으로 배치하기 풀이

문제설명 : 함수 solution은 정수 n을 매개변수로 입력받습니다. n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요. 예를들어 n이 118372면 873211을 리턴하면 됩니다. 제한 조건: n은 1이상 8000000000 이하인 자연수입니다. n return 118372 873211 function solution(n) { return parseInt(n.toString().split('').sort((a, b) => b - a).join('')); } 차차! 문자열 parseInt 함수를 사용해 문자열을 정수로 ! 변환해야한다! 주어진 정수 n을 먼저 문자열로 변환합니다. (toString() 함수 사용) 문자열을 문자 배열로 분할합니다. split 문자 배열을 큰 순서에..

filter 필터 사용 문제

배열에서 height 보다 큰 숫자의 개수를 반환 하는 함수 filter 배열의 filter() 메소드를 사용하여 주어진 조건(a > height)을 만족하는 숫자만을 필터링하고, 필터링 된 배열의 길이(length)를 반환합니다. 즉, 이 함수는 주어진 배열에서 height보다 큰 숫자의 개수를 세는 것입니다. 예를 들어, 다음과 같은 배열이 주어졌다고 가정해 봅시다. 머쓱이보다 키 큰 사람 function solution(array, height) { return array.filter(a => a > height).length } 함수는 4개의 매개변수를 받는다 매개 변수는 각 2개의 분수를 나타내며, 첫번째 분수는 분자가 num1이고 분모가 denom1이며 두번째 분수는 분자가 num2 이고 분모..

JS | 세균증식 for 문 , 이진수 사용

어떤 세균은 1시간에 두배만큼 증식한다고 합니다. 처음 세균의 마리수 n 과 경과한 시간 t 가 매개변수로 주어질 때 t 시간 후 세균의 수를 return하도록 solution 함수를 완성해주세요. 👇🏻내가 풀고 싶었던 방식 function solution(n, t) { for (let i = 0; i < t; i++) { result *= 2; } return result; } 해당 문제는 각 시간마다 2배 씩 증가하는 지수 함수의 값을 계산하는 것으로 이해하면 된다 따라서 주어진 시간에 따라 2를 몇 번 곱해야하는지를 계산하여 최종 값을 도출 할 수 있다. 입력값 (n,t) 2개의 위 코드는 주어진 입력값 n 과 t 에 대하여 해당 문제의 해답을 반환하는 함수 **solution**을 구현한 것입니다..

JS 문자열 정렬하기(1) | replace , split , sort , map

✅문자열 에서 알파벳을 제외한 숫자만 추출해서 오름차순으로 정렬한 배열 을 반환하는 함수 const solution = (my_string) => { return my_string .replace(/[a-z]/gi, "") .split("") .sort((a, b) => a - b) .map((el) => Number(el)); }; 📌my_string 문자열에 특정한 패턴을 찾아 새로운 문자열로 치환한다. replace 메소드 | 문자열에서 특정한 패턴을 찾아 새로운 문자열로 치환하는 메서드이다. my_string.replace(/[a-z]/gi,””) 문자열에서 대소문자 구분없이 알파벳을 제외한 모든 문자 제거하기 (/[a-z]/,’’) 알파벳 소문자- 대문자 모두 대상으로 하고 g와i 플래그를 사용..

JS | 렌더링 , SPA

렌더링? 👩🏻 Html css 자바스크립트 등 개발자가 작성한 문서를 브라우저에서 출력되는 과정을 말한다. SPA 란? 단일 페이지로 구성된 웹 어플리케이션을 말한다. SPA는 화면이동 시에 필요한 데이터를 서버사이드에서 HTML으로 전달받지 않고(서버사이드 렌더링 X), 필요한 데이터만 서버로부터 JSON으로 전달 받아 동적으로 렌더링한다 기존 어플리케이션과 SPA의 차이 기존 어플리케이션은 화면이동 시에 화면 이동에 필요한 HTML을 서버사이드에서 받아서 처음부터 다시 로딩하기 때문에 시간이 걸린다. 반면, SPA에서는 화면 구성에 필요한 모든 HTML을 클라이언트가 갖고 있고 서버사이드에는 필요한 데이터를 요청하고 JSON으로 받기 때문에 기존의 어플리케이션에 비해 화면을 구성하는 속도가 빠르다.

JS | arr.sort 정렬 메소드 사용하기 오름차순 내림차순 | 프로그래머스 중앙값 구하기

정렬 하기 위해서는 sort 메소드를 사용한다. → arr.sort () 배열을 재 정렬해 주는메소드 이다. 그럼 → arr.sort () 로 숫자로 오름차순 정렬하기 풀이 A,b 두 요소를 전달하고 a-b로 크기를 비교해서 양수인지, 음수인지 0인지 만 본다. A가> b 보다 크면 양수로 리턴 , 같으면 0 으로 , a가 a-b) : sort() 메소드를 사용하여 배열을 오름차순으로 정렬합니다. arr.sort((a,b) => b-a) : sort() 내림차순 예제로 보겠다 아래는 프로그래머스 중앙값 구하기 function solution(arr) { return arr.sort((a, b) => a - b)[Math.floor(arr.length / 2)]; } 풀이 이 함수는 배열 arr 을 인자로..

JS | 특정문자열 바꾸기 replaceAll

- replaceAll 정규식 표현 특정 문자를 모두 바꾸기 위한 자바스크립트 문자열 객체 replaceAll 매소드와 정규식 표현이다. const AB = "ice, ice ,cream, choco, chip'; AB.replaceAll("ice", "iceTea") 해석 const AB에는 특정한 ice이라는 문자열을 iceTea라고 변경해주었다. 그래서 AB는 "iceTea, iceTac, cream, choco, chip" 으로 값이 변환된다 프로그래머스 레벨 0 코딩테스트 | 특정 문자 제거하기 문자열 my_string과 문자 letter이 매개변수로 주어집니다. my_string에서 letter를 제거한 문자열을 return하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ my_st..

JS | 자바스크립트 불변성이란? 원시타입 vs 참조타입

불변성을 지켜야 한다 무슨 말일까.. 모르기 때문에 찾아보는 공부! 불변성이란 ? 사전 적으로 불변성이란 값이나 상태를 변경 할 수 없는 것 이다. 자바스크립트에서 객체가 생성된 이후 그 상태가 변경 할 수 없는 것을 의미한다. 여기에서 상태를 변경할 수 있는 것과 값을 재할당하는 것은 다르다는 것 을 알아야한다. let a = 10 ; let b = a ; a = 20; console.log(a,b); // 20 10 위의 코드는 a에 10을 할당하고 b -> a 가 가르키는 주소 를 가리킵니다. 이때 a의 값을 20으로 변경시켜준다. 만약 값을 직접 변경하는 것이면 a,b 둘다 20을 출력해야한다. 하지만 자바스크립트에서 number 값은 불변성을 유지 해서 새로운 a =20이라는 값을 가지는 주소를..

vue.js components 뷰 컴포넌트 사용 , 개념

컴포넌트 란 ? [ 화면을 구성할 수 있는 블록을 말한다. 컴포넌트를 활용하면 화면을 빠르게 구조화 할 수 있으며, 일괄적인 패턴으로 코드를 개발 할 수있다, 또한 코드를 재사용 할 수 있다] 그럼 vue.js 에서 컴포턴트란..? vue js에서는 가장 강력한 기능 중 하나이다. 🔥 element 를 확장하여 재사용 가능 한 코드를 캡슐화 하는 데 도움을 준다. 상위 수준에서 컴포넌트는 vue 의 compile 컴파일러 에 의해 동작이 추가 된 사용자 지정 엘리먼트이다. 경우에 따라 특별한 is 속성으로 확장된 원시 html element 로 나타 낼 수도 있다. vue.js Component 생성 2가지가 있다. 1. 전역 global component : 공통적으로 모든 범위의 여러 인스턴스에서 사..

JS 동기, 비동기 처리 callback , promise , async/await

자바스크립트 동기 비동기 일단 자바스크립트는 한번에 한가지 일만 한다 단일 스레드에서 동작 - 동기 Synchronous Means : 동시에 발생하는 순차적으로 직렬적으로 테스크를 수행 요청을 보냈으면 응답을 받아야 다음 동작이 실행 =>순차적으로 실행됨으로 어떤 작업이 작업중이면 뒤 작업은 대기상태 블로킹 (작업 중단) 발생한다. - 비동기 Asynchronous : 동시에 발생하지 않는다 병렬적으로 테스크를 수행한다. =>현재 작업의 종료 여부와 상관없이 다음 작업 실행 단점: 동기 방식과 다르게 완료 순서가 보장되지 않는다. 블로킹 발생 하지 않는다. console.log("Hello"); setTimeout(() => { console.log(“coffee..