코드스테이츠

코드스테이츠/코드스테이츠 회고

코드스테이츠 unit 10까지의 회고

작성일자: 2023/01/05 💭 느낀점 코드스테이츠를 하면서 지금(2023/01/05)까지 느낀점은 아직 공부하는 습관,방법이 제대로 안잡혀서 그런지 자기주도적 학습 , 무언가 검색해서 적용하는 능력 등과 같은 것을 잘 못한다고 느꼈다. 여태 내가 공부했던 습관을 메타인지해서 돌이켜보면 하루종일 개념정리 무언가 막히는부분이 있으면 계속 붙들고 있는것.. 읽기만 하고 손은 쉬고 있는것? 같은 습관들을 고쳐나가야 할 것 같다. 짧은 기간에 압축해서 배우는 부트캠프이다 보니 배울 양이 엄청 많다..😂 하지만 전과 다르게 요즘은 "배움" 에 있어서 즐거움(?)이 느껴진다.. 나도 왜 그런지 모르겠다.ㅋㅋ😀 앞으로 꾸준히 지금처럼만 하다보면은 나중에 코딩도 익숙해지고 잘해질 것 같은 느낌이다.😊 JavaScri..

코드스테이츠/헷갈리는거 정리

var,let,const 과 스코프,호이스팅

🦖 var,let,const 의 역사 var,let 키워드는 변수를 선언할때 사용하고 const 키워드는 상수를 선언할때 사용한다. Let과 Const는 2015년 ES6 에 탄생한 문법이다. 그 이전에는 변수와 상수 구분없이 Var키워드를 사용했었다. ❓왜 Let 과 Const가 탄생하게 된것일까? Var와 Let은 변수를 선언할때 사용하는 키워드이다. 변수이기 때문에 값을 변경 할 수 있다. 얼핏보면 같은 느낌이지만 그렇지 않다. 🆚 Var와 Let의 차이점은 크게 3가지가 있다. 1️⃣ 스코프 (Scope) 2️⃣ 중복 선언 (Variable redeclatation) 3️⃣ 호이스팅 (Hoisting) 📌 스코프 자바스크립트에서 스코프란 코드가 변수에 접근할 수 있는 범위를 뜻한다. ✅ 스코프의 ..

코드스테이츠/헷갈리는거 정리

type , const

📌 type 7 + '7' = '77' // 숫자 + 문자 = 문자 7 - '4' = 0 // 숫자 - 문자 = 숫자 7 + true = 8 // true를 1로 취급 '7' + true = '7true' // true를 문자로 취급 이런 별난 상황도 존재! 이런 별난 특성을 암기하지말고, 기본에 충실한 베이직한 코딩 습관을 기르자.. 나만 힘들어진다. 📌 const 변수선언 키워드 const 의 가장 큰 특징은 "재할당이 금지된다." 이다. 헷갈릴만한 특징들을 정리해보겠다. 1️⃣ "'const'로 선언된 배열의 경우 새로운 요소를 추가하거나 삭제할 수 있다." const arr = []; const pushnum = 7; arr.push(pushnum); console.log(arr) // [7] /..

코드스테이츠/JavaScript

Unit9-[JavaScript] 클로저

📌 클로저 개요 JavaScript에서는 다른 컴퓨터 언어와는 조금 다른 특성을 종종 가지고 있습니다. 그 중 종종 사용되는 클로저라는 개념에 대해서 알아보겠습니다. MDN의 클로저 정의에 따르면, 다음과 같습니다. "함수와 함수가 선언된 어휘적(lexical) 환경의 조합을 말한다. 이 환경은 클로저가 생성된 시점의 유효 범위 내에 있는 모든 지역 변수로 구성된다." 여기서 주목할 만한 키워드는 "함수가 선언"된 "어휘적(lexical) 환경"입니다. 특이하게도 자바스크립트는 함수가 호출되는 환경과 별개로 기존에 선언되어 있던 환경, 즉 어휘적 환경을 기준으로 변수를 조회하려고 합니다. 이와 같은 이유로 "외부 함수의 변수에 접근할 수 있는 내부 함수"를 클로저 함수라고 합니다. ✏️ 어휘적환경(Lex..

코드스테이츠/JavaScript

Unit9-[JavaScript] 변수 선언과 스코프

📌 변수 선언과 스코프 블록 스코프 안에서 정의된 변수 i는 블록 범위를 벗어나는 즉시 접근할 수 없습니다. 따라서 결과로는 ReferenceError가 나오게 됩니다. 이번엔 앞서 보았던 코드와 동일하나, 변수 선언을 let 대신 var를 이용했습니다. 이번엔 결과가 어떻게 될까요? 이에 대한 결과는 5입니다. 어떻게 블록을 벗어났음에도 불구하고 변수 i에 접근할 수 있는 것일까요? 결론부터 말하면, var 키워드는 for 문이 만들어낸 블록 스코프를 무시합니다. ⭐️ var 키워드 var 키워드로 정의한 변수는 블록 스코프를 무시하고, 함수 스코프만 따릅니다. 그러나, 주의! - 모든 블록 스코프를 무시하는 건 아닙니다. 화살표 함수의 블록 스코프는 무시하지 않습니다. 함수 스코프는 함수의 실행부터 ..

코드스테이츠/JavaScript

Unit9 - [JavaScript] 스코프

📌 스코프 개요 JavaScript에서 스코프(Scope)는 무엇일까요? 영어 단어의 뜻 자체도 ‘범위'를 의미하니까, JavaScript에서 이야기하는 스코프 역시 무언가 제한된 범위를 잘 들여다보기 위해 사용되는 개념이라고 추측해 볼 수 있습니다. 컴퓨터 공학, 그리고 JavaScript에서의 스코프는 "변수의 유효범위"로 사용됩니다. ⭐️ 스코프와 주요 규칙 스코프의 정의 - 스코프는 "변수 접근 규칙에 따른 유효 범위"입니다. 범위가 중괄호(블록) 또는 함수에 의해 나누어지고, 그 범위를 스코프라고 부릅니다. 여기서 우리가 알 수 있는 규칙은 바로 다음과 같습니다. 바깥쪽 스코프에서 선언한 변수는 안쪽 스코프에서 사용 가능합니다. 반면에, 안쪽에서 선언한 변수는 바깥쪽 스코프에서는 사용할 수 없습..

코드스테이츠/헷갈리는거 정리

원시 자료형과 참조 자료형

📌 원시 자료형(primitive data type) 객체가 아니면서 method를 가지지 않는 6가지의 타입 = string, number, bigint, boolean, undefined, symbol, (null) ✅ 원시 자료형 특징 1) 변수 하나당 하나의 데이터만을 담는다. 2) 원시 자료형은 고정된 크기의 보관함(stack)에 담긴다.'stack'이라는 저장공간에 변수이름과 데이터가 함께 저장된다. 3) 원시 자료형이 변수에 할당될 때 값(value) 자체가 담긴다. 4) 원시 자료형 데이터를 복사할 때, 복사본을 수정해도 원본데이터에는 영향을 주지 않는다.(immutable) let A = 1; B = A; B;//1 B = 9; A;//1 B;//9 변수 A에 담긴 원시 자료형을 B에 복..

코드스테이츠/JavaScript

Unit9 - [JavaScript] 원시 자료형과 참조 자료형

📌 원시 자료형과 참조 자료형 개요 타입 기초에서 학습한 number, string, boolean과 같은 고정된 저장 공간을 차지하는 데이터를 모두 원시 자료형(primitive data type)이라고 합니다. 반면에 대량의 데이터를 다루기에 적합한 배열과 객체는 참조 자료형(reference data type)이라고 분류합니다. 이런 분류는 데이터를 저장하는 방식에 따른 분류입니다. 참조 자료형인 배열과 객체를 학습하면서 원시 자료형과 달리 저장 공간이 계속 늘어날 수도 있을 것 같다는 생각이 드시지 않으셨나요? 만약 그런 질문이 생겼다면, 잘 학습하신 겁니다. 어떻게 저장 공간이 유동적으로 늘어날 수 있을까요? 그 이유는 배열과 객체, 그리고 함수가 담겨있는 저장 공간은 특별한 저장 공간을 사용하..

코드스테이츠/헷갈리는거 정리

배열 복사하기

📌 배열 복사하기 배열을 새로운 변수에 할당해도 배열이 복사되지는 않습니다. 새로운 변수에는 원본 배열을 가리키는 참조만 할당되며, 원본 배열의 값을 바꾸면 새 변수에서도 그 변경점이 반영됩니다. let array1 = [1,2,3] let array1Reference = array1; array1[1] = 9; console.log(array1Reference); // Array [1,9,3] - array1의 변화가 array1Reference에도 나타남 - 복사본이 아님 배열의 복사본을 만들기 위해서는 새 배열을 위한 변수를 생성하고, 원본 배열 각각의 원시 요소에 대해서도 새로운 변수를 생성해야 합니다. (변수를 원시 값으로 초기화하면 참조를 할당하지 않고 값을 복사합니다.) JavaScript에..

코드스테이츠/헷갈리는거 정리

GUI 와 CLI

🌼 GUI (Graphical User Interface) 그림이나 아이콘, 버튼 등을 통해 소통하는 방식이다. 우리가 마우스를 통해서 컴퓨터에서 어떤 작업을 할 때 그때의 환경을 GUI라고 한다. GUI 방식은 CLI에 비해 접근성이 좋아 GUI 방식의 도입으로 컴퓨터가 널리 활용되게 되었다. 🌼 CLI (Command Line Interface) CLI는 글자의 입출력을 통해 사용자와 컴퓨터 간 소통하는 방식이다. 초창기 컴퓨터가 발명되었을 때는 마우스가 없었기 때문에 자연스럽게 CLI 방법을 사용하였는데 CLI는 GUI와 다르게 새로운 언어를 배우는 것처럼 배워서 사용해야 해 진입 장벽이 있다. ❓개발자가 GUI 보다 CLI 환경을 더 선호하는 이유? 1) 성능 : CLI를 사용하면 Graphic ..

욱둥
'코드스테이츠' 카테고리의 글 목록 (2 Page)