JavaScript 30

typeScript (타입스크립트) 시작하기

typeScript (타입스크립트) 는 자바스크립트(javaScript)의 슈퍼셋으로 오픈소스 프로그래밍 언어이다. MS - 마이크로소프트에서 개발 유지 관리하며 동적인 자바스크립트를 정적으로 사용할 수 있게 해 준다. 자바스크립트 동적 타입 언어로써 다른 정적 언어 타입보다 유연하지만 그만큼 안정성이 보장받지 못한다. 자바스크립트에서 타입을 제어함으로써 좀더 안정성 있는 개발을 할 수 있게 도와준다. 시작하기 1. node.js 설치 - https://nodejs.org/ko/ 2. 설치후 에디터 터미널에 npm install -g typescript 입력 3. tsconfig.json 만들기 (작업할 폴더에) 4. tsc -w 터미널에 입력 (ts 파일을 실시간으로 js파일로 컴파일 시켜준다.) 5...

TypeScript 2022.04.18

리액트(React)에서 Sass(SCSS)사용하기

Sass(SCSS) 는 CSS 전처리기 (CSS Preprocessor) 이다. ※ 웹에서는 CSS 만 작동하므로 전처리기로 작성 후 CSS로 컴파일해야 한다. 기존의 CSS에서 사용할 수 없었던 많은 기능들이 추가되어 사용에 있어 편의성과 가독성이 더 좋은 거 같다. SCSS는 CSS와 완전히 호환되도록 구문을 도입해 만든 Sass의 모든 기능을 지원하는 CSS의 상위 호환 전처리기이다. 라이브러리 설치 (npm global 설치) $ npm install -g node-sass (yarn 설치) yarn add node-sass 확장자는 scss이다. 중첩(Nesting) Sass(SCSS)에서는 중첩기능(Nesting)을 사용할 수 있다. 중첩을 사용하여 상위 선택자의 반복을 줄이고 가독성을 더 좋..

React 2022.03.07

ES5 prototype(프로토타입) 상속기능.

Object.create() ES5 문법 중 하나인 프로토타입 상속 기능으로 간단하게 사용 가능하다. let parents = { name: "Oh", age: 50}; let child = Object.create(parents); console.log(child) let grandChild = Object.create(child); console.log(grandChild) 상속할 부모(parents)에 속성 데이터를 할당하고 첫 번째 자식(child)에게 Object.create(parents); 을 할당하여 부모의 속성을 상속한다. 그리고 콘솔을 출력하면 {} 이렇게만 출력되는데 그건 child에 가 따로 속성 값을 부여하지 않아서 이다. 하지만 더보기 버튼을 누르면 [[Prototype]] : ..

JavaScript 2022.02.16

React Router v6 업데이트, 바뀐점

멋사 프론트엔드 과정을 종료하고 리액트를 따로 공부해야 될 거 같아 애플코딩님의 강의를 듣던 중 강의에서 라우터 관련해서 강의대로 했음에도 안 되는 부분들이 몇 가지 있어 찾아보던 중에 react-router 가 업데이트하면 문법이 조금 바뀐 걸 알게 되었다. 아직 리액트 자체가 입문 수준이라 몇 가지만 정리하기로 했다. Switch 로 감싸진 들중에 가장 먼저 매칭 된 하나만 보여준다. Routes 는 Switch의 대체로 나왔는데 Switch 와 다르게 가장 일치하는 항목을 기반으로 선택된다. component , render 에 화살표 함수를 사용하지 않는다. element 속성에 JSX 컴포넌트를 전달할 수 있다. Router 에 component , children 대신 element를 사용 R..

React 2022.02.09

Javascript <자바스크립트> this

this this 는 함수가 호출되는 방식에 따라서 동적으로 결정된다. 1. 일반 함수에서 this 는 전역 객체인 window와 바인딩 된다. console.log(this); //window{...} function a (){ console.log(this) } a(); //window{...} 2. 메소드 안에서 this 는 메소드를 가지고 있는 오브젝트(객체)에 바인딩 된다. let x = { data: "oh", a : function(){ console.log(this) } } x.a(); // { data:"oh", a: f } 3. 생성자 함수로 호출시 생성자 함수가 생성할 객체에 바인딩 된다. function name() { this.first = "oh", this.last = "ahh..

JavaScript 2022.01.27

Javascript <자바스크립트> call by value - reference. {콜바이벨류.콜바이레퍼런스}

Javascript call by value - reference. 평가 전략 (evaluation strategy) call by value.의미와 같이 값이 그대로 복사되는 것을 의미한다. 자바스크립트(JS)에서는 원시 데이터/원시 값의 경우 값의 복사 call by value가 발생하게 됩니다. call by value.var i = 1;function somefunc(a) { a = a + 1; return a;}somefunc(i); // i의 값을 파라미터로 값만 복사해서 넘긴다. 복사된 값을 넘기기 때문에 원본은 바뀌지 않는다.console.log(i) // 결과 1i의 값을 함수의 인자로 파라미터로 넘길때 값을 복사해서 넘기기 때문에 원본의 값은 변하지 않는다.  call by..

JavaScript 2021.12.22

Javascript <자바스크립트> Map 메소드 사용하기.

Javascript Map map은 배열을 순회하면서 실행되는 콜백함수의 결과값들을 새로운 배열로 반환한다. Array(배열) 에 map 메소드를 사용해서 배열 * 2 값을 만들기. let array = [1, 4, 9, 16]; let result = array.map(x => x * 2); // 배열에 map 메소드를 사용해서 리턴값으로 배열의 원소 *2값을 result 에 할당한다. //화살표함수( 전통적인 함수표현(function)의 간편한 대안) console.log(array) //map 은 원본값은 건드리지 않고 새로운 배열을 생성하여 리턴한다. [1, 4, 9, 16] console.log(result) // 새로운 배열을 생성하여 result의 할당한 결과값. [2, 8, 18, 32] ..

JavaScript 2021.12.20

Javascript <자바스크립트> 재귀함수, 즉시실행함수.

Javascript 재귀 함수, 즉시 실행 함수.재귀 함수와 즉시 실행 함수.재귀 함수는 말 그대로 자기가 자기 자신을 호출하고 특정 조건이 될 때까지 계속해서 호출하고 조건이 충족되면 함수를 빠져나온다.재귀 함수를 사용할 때는 함수를 끝내는 종료 조건이 있어야 한다. 없으면 무한으로 계속해서 돌기 때문이다.일부 함수는 반복문으로 구현 가능하지만 그렇지 않은 경우도 있는데 tree 구조의 노드 전체를 확인할 때 재귀를 사용하면 적은 코드로 확인 가능하고 직관적이다.하지만 재귀 함수를 호출할 때마다 스택을 소비하기 때문에 반복문에 비해 메모리 소비 또는 시간이 더 걸리수 있다. (스택은 나중에 포스팅) 오늘은 재귀 함수중에서 팩토리얼 : 수학적 용어로 계승이란 뜻으로 1부터 n까지의 정수를 곱하는 연산..

JavaScript 2021.12.16

Javascript <자바스크립트> 연습 문제 풀이(split, array, for)

Javascript 연습 문제 풀이(split, array, for) split, array, for을 이용한 간단한 문제 풀이해보기. 문자열을 split 로 하나씩 자르고 숫자로 더하고 평균 구하기. let data = '5, 4, 10, 2, 5'.split(',') // '5, 4, 10, 2, 5' 는 하나의 문자열 // split 으로 문자열을 일정한 구분자로 잘라서 배열로 저장 let result =0; // 결과값을 담을 변수 선언과 0 할당. for (let i of data){ // 스플릿된 문자열을 for of 배열을 순환한다. result += parseInt(i)/data.length; // 순환 되면서 정수로 반환한 값을 배열의 길이만큼 나누고 결과값에 더해진다. } // 하지만 ..

JavaScript 2021.12.14

Javascript <자바스크립트> 반복문, while문

Javascript 반복문, while문 for 문에 이어서 반복 문중 하나인 while문을 실습하면서 이해 하기. while 문으로 짝수만 출력하기 let i = 0; // i 에 0 을 할당 해준다. while (i < 100){ // 0 부터 100 미만까지 조건문을 반목한다. console.log(i); // i 를 출력 해주고 i += 2; // i 의 2를 더해고 다시 위로 올라가서 출력해주고 98이 되면 마지막으로 한번더 돌고 100을 // 찍고 while 문을 종료한다. } while 은 ~~ 동안 반복하는 것으로 조건을 충족할 때까지 반복하고 종료한다. while 문으로 짝수값만 더하기 let i = 0; // i 에 0 을 할당해준다. let result =0; // 최종 결과값을 담을..

JavaScript 2021.12.13

손코딩 하기 // <JavaScript>

손 코딩 손 코딩은 에디터의 자동완성이나 도움없이 손으로 써내려가는 코드이며 처음부터 손으로 써보고 잘 구현되는지 확인해보거나 혹은 이미 에디터로 작성한 코드들을 이해하고 습득하기 위해서 클론(?) 손코딩 등 하는 사람의 용도와 목적에 따라서 응용하면서 하면 될꺼같다. 수업의 일환으로 중간중간 이해가 안 되는 부분들을 손 코딩을 하는 시간을 가졌는데 손으로 써보니 에디터에서 쓴걸 하나씩 보면서 이해하는 것보다 좀 더 이해가 잘되는 거 같아서 뭔가 막히거나 어려울 때 1시간 정도씩 써보고 있다. 수업 시간 때 배운 코드들 중에서 어렵거나 잘 이해가 안 되는 코드들은 3~6번씩 써보고 이번에 한건 이미 완성된 자바스크립트 코드인데 예전에 만들었던 페이지의 자바스크립트 부분이고 그때는 아직 배우지 않은 상태라..

private 2021.12.09

Javascript <자바스크립트> 반복문, for문 .2

Javascript for문 문제풀이(실습해보기) 저번 포스팅에 이어서 포문으로 풀어 볼 수 있는 문제(난이도 없음)를 풀어볼 건데 문제라기보다 그냥 for문을 이해하기 위한 실습 정도라고 생각하면 될 거 같다. 글씨 거꾸로 순차적으로 출력하기. let s = 'hello world' // s 라는 변수에 텍스트를 할당한다. for (let i = s.length; i >= 0; i--) { //1. 초기값 에 텍스트의 길이만큼을 할당하고 //2. i 가 0 보다 크거나 같으면 반복문을 마친다. //3. i-- 로 1씩 감소된다. //// 텍스트의 길이가 10이고 1씩 감소되면서 반복된다. console.log(s[i]) // 초기값의 할당된 텍스트의 길이가 10이고 할당된 텍스트를 인덱스로 봤을때는 9..

JavaScript 2021.12.07

Javascript <자바스크립트> 반복문, for문

자바스크립트 js 반복문 반복문에는 여러가지 방법으로 방법 문들이 존재하다. 자바스크립트에서 지원하는 반복문 for 문 do...while 문 while 문 레이블 문 break 문 countinue 문 for..in 문 for...of 문 for 문을 활용해서 다양한 값 구해보기. 오늘은 많은 반복문들 중에서 for 문을 활용하여 몇 가지 기초적인 실습 예제를 해볼 예정 인다. for 문을 처음 이론으로 들었을 때는 그냥 원하는 걸 반복해서 결괏값을 얻는 아주 쉽게 정의된 느낌이었는데 역시나 실제로 코드로 뭔가 써보니 나한테는 모든 부분들이 생소하고 어려웠던 거 같다. 100까지의 3의 배수와 5의 배수를 더한 값을 구한다. let result = 0; for (let x = 0; x < 101; x+..

JavaScript 2021.12.06

Javascript <자바스크립트> 변수 , 선언

Javascript 변수 어플리케이션에서 값에 상징적인 이름으로 변수를 사용합니다. 변수명은 식별자(identifier)라고 불리며 특정 규칙을 따릅니다. JavaScript 식별자는 문자, 밑줄(_) 혹은 달러 기호($)로 시작해야 하는 반면 이후는 숫자(0-9)일 수도 있습니다. JavaScript가 대소문자를 구분하기에, 문자는 "A"부터 "Z"(대문자)와 "a"부터 "z"(소문자)까지 모두 포함합니다. ISO 8859-1 혹은 Unicode 문자(가령 å 나 ü)도 식별자에 사용할 수 있습니다 또한 Unicode escape sequences 도 식별자에 문자로 사용할 수 있습니다. 자바스크립트에서의 변수와 값(데이터)은 각각의 메모리상의 저장되고 변수는 할당된 값(데이터)를 가르킨다(바라본다)...

JavaScript 2021.12.01

Javascript <자바스크립트> 란??

Javascript Javascript(자바스크립트)는 정적인 HTML 문서를 프로그래밍 적으로 제어 하여 동적으로 만들어 주거나 클라이언트(사용자) 와의 상호 작용을 할수 있게 하는 언어이며 웹 브라우저가 해석해서 사용할수 있는 유일한 프로그래밍 언어이다. 근래에는 웹 뿐만 아니라 게임, 서버 프로그래밍등 다양하게 범위를 확장시키고 있는 언어이다. HTML과 CSS 와 다르게 자바나, C언어 일반 프로그래밍 언어과 유사한 문법 구조를 가지고 있다. 하지만 다른 언어와 다르게 타입을 명시할 필요가 없는 인터프리터 언어이다. 객체 지향 언어이며 AJAX를 이용해 서버와 실시간 통신도 가능하다. 객체 지향 언어란 - 완성된 하나의 데이터를 처리하는게 아닌 , 다수의 "객체" 를 만들고, 각 객체들의 역할이 ..

JavaScript 2021.11.07
반응형