일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 타입스크립트
- 리액트
- react-hook-form
- react-native
- 크라코
- react-native-image-picker
- react-native-camera-roll
- 프로그래머스
- react-native-vision-camera
- javascript
- 자바스크립트
- js
- ios
- 유니온타입
- React
- 파스에러
- 자료구조와알고리즘
- 코드숨
- 제네릭타입
- 리액트쿼리
- Android
- 배열
- slice
- Flipper
- 리액트네이티브
- Typescript
- reactnative
- 모던자바스크립트
- craco
- sort( )
- Today
- Total
목록javascript (11)
KassyLog

cosnt foo = () => {}; cosnt bar = () => {}; foo(); bar(); 다음 예제의 foo 함수와 bar 함수는 호출된 순서대로 스택 자료구조인 실행 컨텍스트 스택에 푸시되어 실행된다. 함수가 실행되려면 함수 코드 평가과정에서 생성된 함수 실행 컨텍스트가 실행 컨텍스트 스택에 푸시되어야한다. 다시 말해, 실행 컨텍스트 스택에 함수 실행 컨텍스트가 푸시되는 것은 바로 함수 실행의 시작을 의미한다. 함수가 호출된 순서대로 순차적으로 실행되는 이유는 함수가 호출 된 순서대로 함수 실행 컨텍스트가 실행 컨텍스트 스택에 푸시되기 때문이다. 이처럼 함수의 실행 순서는 실행 컨텍스트 스택으로 관리한다. 자바스크립트 엔진은 단하나의 실행 컨텍스트 스택을 갖는다. 이는 함수를 실행할 수 ..

알고리즘 문제를 풀다보니 문제 해결에 어려움을 겪었던 문제가 있어서 따로 정리해보려한다. 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 정수를 저장한 배열, arr 에서 가장 작은 수를 제거한 배열을 리턴하는 함수, solution을 완성해주세요. 단, 리턴하려는 배열이 빈 배열인 경우엔 배열에 -1을 채워 리턴하세요. 예를들어 arr이 [4,3,2,1]인 경우는 [4,3,2]를 리턴 하고, [10]면 [-1]을 리턴 합니다. 출력 예시 arr return [4,3,2,1] [4,3,2] [10] [-1] before 아래의 코드는 테스트 코드는 통..

arr.sort([compareFunction]) compareFunction (optional) 정렬 순서를 정의하는 함수. 생략하면 배열은 각 요소의 문자열 변환에 따라 각 문자의 유니 코드 코드 포인트 값에 따라 정렬. 정렬한 배열은 복사본이 아닌 원본 배열이 정렬된다는 것에 유의해야한다. Array.prototype.sort() - JavaScript | MDN sort() 메서드는 배열의 요소를 적절한 위치에 정렬한 후 그 배열을 반환합니다. 정렬은 stable sort가 아닐 수 있습니다. 기본 정렬 순서는 문자열의 유니코드 코드 포인트를 따릅니다. developer.mozilla.org arr.sort((a,b)=>a-b) //오름차순 arr.sort((a,b)=>b-a) //내림차순 con..

이 둘은 배열을 이어붙이거나 제거할 때 사용하는 메소드라는 공통점을 가지고 있지만 slice는 "조각"뜻의 명사이고 splice는 "이어붙이다"뜻의 동사인 것처럼 중요한 차이점을 가지고 있다. 바로 원본 배열의 변형과 새로운 배열 반환.! 1. splice ( ) Array.prototype.splice() - JavaScript | MDN splice() 메서드는 배열의 기존 요소를 삭제 또는 교체하거나 새 요소를 추가하여 배열의 내용을 변경합니다. developer.mozilla.org 기존 요소를 삭제 또는 교체하거나 새 요소를 추가하여 원본 배열이 변형된다. array.splice(start[, deleteCount[, item1[, item2[, ...]]]]) start 배열의 변경을 시작할 ..

toString() Object.prototype.toString() - JavaScript | MDN The toString() 은 문자열을 반환하는 object의 대표적인 방법이다 developer.mozilla.org 보통 문자열을 반환하는 object의 대표적인 방법인데 10진수를 다른 진법으로 변환해야할 때 사용하기도 한다. 이때는 기수(radix)를 매개변수로를 갖는데 이때 기수의 값은 최소 2부터 36까지이다. 기수를 이용함으로써 10진수를 (1, 2, 3, 4, 5...) 다른 진수로 변환할 수 있으며 아래는 10진수를 2진수로 변환하는 예제이다. let num = 10; console.log(num.toString(2)); // "1010": 10진수를 2진수로 변환 parseInt() ..

요즘 자바스크립트 내장메서드 관련해서 프로그래머스 알고리즘 문제풀이를 활용해서 공부하곤 한다. 그러다가 그냥 습관적으로 사용하던 메소드를 일부 정리 해본다. 1. toString( ), String( ) 숫자를 문자열로 변환할 수 있다. String - JavaScript | MDN String 전역 객체는 문자열(문자의 나열)의 생성자입니다. developer.mozilla.org String.prototype.toString() - JavaScript | MDN toString() 메서드는 객체의 문자열 표현을 반환합니다. developer.mozilla.org const num = 5; const str1 = num.toString(); console.log(str1, typeof str1) //5..

클로저는 자바스크립트 고유의 개념이 아니라 함수를 일급 객체로 취급하는 함수형 프로그래밍 언어(Functional Programming language: 얼랭(Erlnag), 스칼라(Scala), 하스켈(Haskell), 리스프(Lisp)…)에서 사용되는 중요한 특성이다. 클로저는 자바스크립트 고유의 개념이 아니므로 ECMAScript 명세에 클로저의 정의가 등장하지 않는다. 클로저에 대해 MDN은 아래와 같이 정의하고 있다. Closures - JavaScript | MDN A closure is the combination of a function bundled together (enclosed) with references to its surrounding state (the lexical envi..

객체를 프로퍼티 값으로 갖는 개체의 경우 얕은 복사는 한 단계까지만 복사하는 것을 말하고 깊은 복사는 객체에 중첩되어 있는 객체까지 모두 복사하는 것을 말한다. 객체를 대입하게 되면 참조에 의한 할당이 이루어지므로 (얕은 복사) 둘은 같은 객체이다. const obj = { a: 1, b: 2} const obj2 = obj console.log(obj === obj2) // true 얕은 객체의 단점은 참조에 의한 할당이기때문에 내부 객체의 property 를 공유하게 된다. const obj = { a:1, b:2 } const obj2 = obj obj2.a = 100 console.log(obj.a) // 100 원시값은 깊은 복사, 객체는 얕은 복사로 일어난다. 깊은 복사의 예시는 아래와 같다...