JavaScript 24

로컬 스토리지 localStorage 와 세션 스토리지 sessionStorage

이번 프로젝트에서 처음으로 사용해본 로컬스토리지 🤔 네트워크 강의 때 공부 했었는데 막상 개발자분이 세션 스토리지와의 차이점을 여쭤봤는데 대답을 하지 못했음.. 반성하고 다시 공부해보자! `localStorage` 웹 애플리케이션에서 클라이언트 측에서 데이터를 저장하고 관리하는 데 사용하는 기능 중 하나. 사이트 및 앱이 만료날짜 없이 웹 브라우저에 키-값 쌍을 저장할 수 있도록 하는 속성(Property)이다. 사용자가 브라우저를 닫거나 컴퓨터를 다시 시작한 후에도 저장된 데이터는 유지된다. localStorage는 window 객체의 속성 중 하나로 브라우저 창과 상호작용하고 제어할 수 있는 전역 객체(Global object)로서 사용된다. 또한 window 속성과 메서드와 함께 사용할 수 있다. ..

JavaScript 2023.08.28

상수를 대문자로 쓰는 이유? 뿌리를 알아보자!

프로젝트 중 상수를 대문자로 쓰는 게 관례라고 해서 왜 그런 것인지, 꼭 지켜야만 하는 것인지에 대해 생각해보려 한다! 상수 Constant 프로그래밍에서 변하지 않는 것을 의미한다. 상수는 변수에 할당되지만 프로그램 실행 중에는 변경하거나 수정할 수 없는 값이다. 일반적으로 시간이 지나도 변하지 않는 고정 값 또는 값을 나타내는 데에 사용된다. `const` 키워드를 사용하여 정의되며 상수 값은 일단 정의되면 수정할 수 없다. (JS에서 배열 일부를 변경하는 것은 가능함, 참조하는 주소값을 변경하는 것은 아니라서. 통째로 바꾸려는게 안된다는 것. ) JavaScript는 변경할 수 없는 값을 선언하는 방법을 제공할까? 관습의 뿌리는 어디일까! The capitalization convention has..

JavaScript 2023.08.28

자료구조, 배열 Arrays, 내장 메서드로 재배열 하기

Computer Science의 필수, 자료구조. 듣기야 많이 들었는데 대체 뭘까? 왜 자료구조와 알고리즘 공부의 필요성을 강조하는 걸까? 이런 공부를 통해 얻을 수 있는 것은 무엇일까? 직접 알아보고 생각해보고 느껴보자! 강의로 배열을 공부하면서 배열이 자료구조의 제일 쉽고 기본적인 형태라고 들어서 제대로 짚고 넘어가자고 생각했다. 테스트 코드를 만들며 겪은 문제들을 해결하는 과정도 포스팅 해보겠다. 자료구조 Data Structure 효율적인 접근 및 수정을 가능케 하는 자료의 조직, 관리, 저장을 의미한다. 더욱 정확히 말하면, 자료구조는 데이터 값의 모임, 데이터 간의 관계, 데이터에 적용할 수 있는 함수나 명령을 의미한다. 컴퓨터가 데이터를 효율적으로 다룰 수 있게 도와주는 데이터 보관 방법과 ..

JavaScript 2023.08.19

반복문 없이 Array.prototype.filter()로 쉽게 재배열 하기

📚 Testing JavaScript Applications 를 공부하면서, 장바구니 시스템을 사용하면서 선택 삭제, 전체 삭제 기능을 만들어보았다. 그 중 선택 삭제 기능에서, 책 예제에 있는 것을 그대로 받아들이기 보다, 좀 더 모던하게 보여줄 순 없을까를 고민했다. 책 예제 코드 class Cart { constructor() { this.items = []; } addToCart(item) { this.items.push(item); } removeFromCart(item) { for (let i = 0; i < this.items.length; i++) { const currentItem = this.items[i]; if (currentItem === item) { this.items.spli..

JavaScript 2023.08.15