🌵 문제 상황프로그래머스의 문제 중 'JadenCase 문자열 만들기'에서 문자열 중 원하는 문자만 대문자로 바꾸기 위해 '='을 이용하여// 🚫틀린 코드입니다string[i] = string[i].toUpperCase();위와 같은 코드로 새로운 문자를 할당했지만, 문자가 제대로 변경되지 않았습니다. 그 이유는자바스크립트의 원시값은 변경 불가능 = 불변하기 때문입니다.(전체값을 재할당은 가능)따라서 원시값이란 무엇인지와 문자열의 특정 문자를 변경하는 방법에 대해 알아보겠습니다. 🌵 원시값(primitive, 원시 자료형)객체가 아니면서 메서드 또는 속성도 가지지 않는 데이터로, 변수에 저장된 값에 직접적으로 접근할 수 있는 단순한 데이터입니다.원시값의 종류에는 7가지가 있습니다.String(문자)..
분류 전체보기
🔑 key란키는 리액트가 어떤 항목을 변경하거나 추가 또는 삭제할지 식별하는 것을 돕습니다.키는 각 요소에 고유성을 부여하기 위해 배열 내부의 요소에 지정해야 하고, 그 값은 변하지 않아야 합니다.전체 범위에서 고유할 필요는 없고, 형제 요소들 사이에서만 고유한 값이면 가능합니다. 따라서 대부분의 경우, 데이터의 id를 키로 지정하여 사용합니다.function NumberList({ numbers }) { const listItems = numbers.map((number) => {number} ); return ( {listItems} );}렌더링 한 항목에 대한 안정적인 id가 없거나 명시적으로 키를 지정하지 않으면, 대안으로 요소의 인덱스를 key로 사용할 수 있습니다.(리액..
🌳 렌더링(rendering)리액트에 존재하는 컴포넌트들이 현재 자신이 가지고 있는 props와 state의 값을 기반으로 UI를 어떻게 구성하고,구성한 UI를 바탕으로 브라우저에게 어떤 결과를 제공할 것인지 계산하는 일련의 과정입니다. 리액트의 렌더링 과정은 크게 렌더 단계와 커밋 단계로 나눌 수 있습니다.랜더 단계(render phase)컴포넌트를 실행한 결과와 이전의 가상 돔을 비교한 뒤, 변경이 발생하여 렌더링이 필요한 컴포넌트를 체크커밋 단계(commit phase)렌더 단계에서 체크한 변경 사항들을 실제 돔에 적용하여 사용자에게 보여줌 리액트에서 렌더링이 일어나는 경우는 다음과 같습니다.최초 렌더링재렌더링(re-rendering)클래스형 컴포넌트의 setState가 실행되는 = state가 ..
배열은 일반 객체에 여러 기능을 추가해 만든 특수한 객체로, 자바스크립트는 배열을 쉽게 다룰 수 있는 메서드를 제공합니다.정리할 배열 메서드는 다음과 같습니다.요소 추가/삭제배열 잘라내기/붙이기배열 순회배열 탐색배열 정렬 🌿 요소 추가 및 삭제아래는 배열의 맨 끝 요소를 대상으로 하는 메서드입니다. push( 추가할_요소 )배열의 맨 끝에 새로운 요소를 추가하고, 새 배열의 길이를 반환합니다.const alphabet = ["a", "b", "c"];const newLength = alphabet.push("d", "e");console.log(alphabet); // ["a", "b", "c", "d", "e"]console.log(newLength); // 5 pop()배열의 맨 끝에 있는 요소를 ..