본문 바로가기

Javascript

(101)
불변 객체 : 얕은복사vs깊은복사_v3.4 (5) 불변 객체 불변 객체의 정의개념은 알겠는데, 그 개념이 왜 필요한지 알겠나요? 아래 예시를 통해서 “불변하다”. 혹은, ‘불변객체’의 개념이 왜 필요한지를 한번 알아보도록 합시다 🐱 우리는 앞선 과정에서, **가변하다**와 **불변하다**의 개념을 배웠습니다. 다시 살짝 정리해서 객체를 예로 들면, 객체의 속성에 접근해서 값을 변경하면 가변이 성립했었죠. 반면, 객체 데이터 자체를 변경(새로운 데이터를 할당)하고자 한다면 기존 데이터는 변경되지 않습니다. 즉, 불변하다라고 볼 수 있습니다. 불변 객체의 필요성 다음 예시는 객체의 가변성에 따른 문제점을 보여주고 있어요 🙄 👍가변한다는 불변성// 그러나, 데이터 많은 경우 하드코딩 곤란 >> 얕은복사 방법 차용 위 방법이 과연 최선일까요? chang..
변수선언 데이터 할당_v3.3 가변값과 가변성(with 참조형 데이터) 참조형 데이터의 변수 할당 과정 // 참조형 데이터는 별도 저장공간(obj1을 위한 별도 공간)이 필요합니다! var obj1 = { a: 1, b: 'bbb, }; ⬇️ 강의를 참고해서 아래 표를 직접 작성해보세요! 변수영역 주소 1001 1002 1003 1004 데이터 obj/a:7103~ 데이터영역 주소 5001 5002 5003 5004 데이터 1 (가비지컬렉터) b:'bbb' 2 변수영역 var obj1 별도공간 주소 7103 7104 7105 7106 데이터 a/a:5001 > 3 (가변:변경됨) b/a:5002 c 기본형 데이터의 변수 할당 과정과 차이점 : 객체의 변수(프로퍼티) 영역의 별도 존재 여부 참조형 데이터가 불변하지 않다(가변하다)라고 ..
변수 선언과 데이터 할당_v3.2 ✅ 변수 선언과 데이터 할당 할당 예시(풀어 쓴 방식, 붙여 쓴 방식 동일하게 동작해요) 👍/** 선언과 할당을 풀어 쓴 방식 */ var str; str = 'test!'; /** 선언과 할당을 붙여 쓴 방식 */ var str = 'test!'; ⬇ 강의를 참고하셔서, 직접 아래 표를 작성해보세요! 주소(변수영역) ... 1002 1003 1004 1005 데이터 (변수영역) var str; 이름:str 데이터: 5004 var a = 1; var b = 1; var c = 1; var d = 1; ... 만개의 변수 공간 주소(데이터영역) ... 5002 5003 5004 5005 데이터 (데이터영역) str = 'test!'; '' '' 'test' /** 선언과 할당을 풀어 쓴 방식 */ var..
데이터 타입&메모리_v3.1 ✅ 데이터 타입의 종류(기본형과 참조형) 자바스크립트에서 값의 타입은 크게 기본형(Primitive Type)과 참조형(Reference Type)으로 구분됩니다. 기본형과 참조형의 구분 기준은 **값의 저장 방식과, 불변성 여부**입니다. 💡 [기본형과 참조형의 구분 기준] 복제의 방식 기본형 : 값이 담긴 주소값을 바로 복제 참조형 : 값이 담긴 주소값들로 이루어진 묶음을 가리키는 주소값을 복제 불변성의 여부 기본형 : 불변성을 띔(=불변하다) // var a = 6; a = 'abc';(?) (메모리관점에서 불변) 참조형 : 불변성을 띄지 않음 자, “불변성을 띈다” 이 말을 이해하기 위해서 우리는 메모리와 데이터에 대한 내용을 이해해야만 합니다. 아래에서 그 배경지식을 낱낱이 살펴보기로 합시다 😎..
CSS / Javascript 파일 분리 ✅ CSS파일분리 : html에서 css를 우선 분리하기 위해 link 라고 치면 stylesheet가 형성된다. href에 style.css라는 파일명을 작성해준다. ✅ js파일분리 : html에서 JS를 우선 분리하기 위해 scripy 라고 치면 src가 형성된다. src에 ./를 하면food.js라는 파일명을 작성해준다.
SQLAlchemy로 Database 조작하기 ✅ SQLite란? 작지만 빠르고 탄탄하므로 SQLite는 세계에서 가장 많이 사용되는 데이터베이스 중 하나 SQLite와 같은 데이터베이스에서 데이터를 다루기 위해서는 보통 SQL을 사용(ORM 이라는 걸 사용) ORM은 쉽게 얘기하자면 프로그래밍 언어(지금은 Python)으로 데이터베이스를 다루는 방법
[fetch] 서버 - 데이터 받기(서울시 미세먼지 데이터) ✅ fetch 사용하는 방법 1. fetch 기본 골격 작성 2. 호출할 정보를 가져올 파일경로(또는 URL경로) 작성 3. 호출 성공하면 불러올 정보 조건 작성 🔥 미세면지 수치가 60 보다 큰 곳들만 가져오기 미세먼지 정보 지역별
ChatGPT활용해 JS에 현재 시간 넣는 방법 튜터의 ChatGPT Hello, My name!
JS 코딩테스트_vs-code 연습장 활용해서 풀기 코딩테스트 프로그램, 프로그래머스가 익숙하지 않기도 하고 코드가 맞는지 확인하는 작업을 하기 위해 vs-code를 연습장 삼아 터미널에 출력해보고 프로그래머스로 답안을 옮기는 방식으로 진행해보려 한다. ✅[ vs-code 연습장 ] 사칙연산 문제 1. 두 수의 합 function solution(num1, num2) { return num1 + num2; } console.log(solution(2, 3)); ✅ [ vs-code 연습장 ] 사칙연산 문제 2. 두 수의 차 function solution(num1, num2) { return num1 - num2; } console.log(solution(2, 3)); ✅ [ vs-code 연습장 ] 사칙연산 문제 3. 두 수의 곱 function sol..
프로그래머스 코딩테스트 - Github연동 2배 활용방법 자바스크립트 문법공부는 오늘까지 강의로 듣고 연습문제때 풀었던 것처럼 이제 내일부터 프로그래머스를 활용해 문제를 풀어나갈 것이다. 사전준비 세팅으로 프로그래머스-깃헙 연동과 JS페어 프로그래밍 준비를 해두어야겠다. 프로그래머스-깃헙 연동되면 위와 같이 초록 체크 표시가 뜬다. 깃헙 Repositories에도 잘 연동되어 들어온 것을 확인할 수 있었다. 굳~!