Javascript
-
유효범위 - 함수지향 | 생활코딩Javascript/ECMAScript 2009 (ES5) 2020. 2. 2. 20:40
[출처 : https://opentutorials.org] 유효범위 - 함수 밖에서 변수를 선언하면 그 변수는 전역변수, 함수 안에서 변수를 선언하면 그 변수는 지역역변수 - 지역변수의 유효범위는 함수 안이고, 전역변수의 유효범위는 에플리케이션 전역 - 같은 이름의 지역변수와 전역변수가 동시에 정의되어 있다면 지역변수가 우선 - var를 사용하지 않은 같은 이름의 지역변수는 전역변수가 된다. 지역변수의 사용을 권장 - 함수 안에 전역 변수를 사용하고 있는데 누군가에 의해 전역 변수의 값이 달라지면 함수의 동작도 달라지고 버그의 원인. - 함수의 핵심은 로직의 재활용인데 전역변수를 사용한 함수는 다른 에플리케이션에 이식하는데도 어려움을 초래한다. 전역변수의 사용 - 로직을 모듈화하는 일반적인 방법이다. -..
-
배열 ... 정규표현식 -자바스크립트 기본 | 생활코딩Javascript/ECMAScript 2009 (ES5) 2020. 2. 2. 20:36
[출처 : https://opentutorials.org] 배열 : 연관된 데이터를 모아서 통으로 관리하기 위해 사용하는 데이터 타입. 배열에 원소 추가 var li = ['a', 'b', 'c']; // 하나의 원소 추가 li.push('d'); // return 4; length를 반환 // 복수의 원소 추가 li = li.concat(['e', 'f']); // return (6) ["a", "b", "c", "d", "e", "f"]; 원소를 반환 // 배열의 앞에 원소 추가 li.unshift('z'); // return 7; length를 반환 howmany, element1, ..., elementN); - 배열의 특정 위치(index)에 원소 혹은 배열을 추가하거나 삭제할 때 사용. 대..
-
템플릿 리터럴 - 문법 | PoiemawebJavascript/ECMAScript 2015 (ES6) 2020. 2. 1. 12:40
[출처 : https://poiemaweb.com] ES6는 템플릿 리터럴(Template literal)이라고 불리는 새로운 문자열 표기법을 도입하였다. 템플릿 리터럴은 일반 문자열과 비슷해 보이지만, ‘또는 “같은 통상적인 따옴표 문자 대신 백틱(backtick) 문자 `를 사용한다. 템플릿 리터럴은 작은따옴표(')와 큰따옴표(")를 혼용할 수 있다. 일반적인 문자열에서 줄바꿈은 허용되지 않으며 공백(white-space)를 표현하기 위해서는 백슬래시로 시작하는 이스케이프 시퀀스(Escape Sequence)를 사용하여야 한다. ES6 템플릿 리터럴은 일반적인 문자열과 달리 여러 줄에 걸쳐 문자열을 작성할 수 있으며 템플릿 리터럴 내의 모든 white-space는 있는 그대로 적용된다. con..
-
let, const와 블록 레벨 스코프 - 문법 | PoiemawebJavascript/ECMAScript 2015 (ES6) 2020. 2. 1. 12:35
[출처 : https://poiemaweb.com] ES5의 var 키워드 1. 함수 레벨 스코프(Function-level scope) - 전역 변수의 남발 - for loop 초기화식에서 사용한 변수를 for loop 외부 또는 전역에서 참조할 수 있다. 2. var 키워드 생략 허용 - 의도하지 않은 변수의 전역화 3. 중복선언 허용 - 의도하지 않은 변수값 변경 4. 변수 호이스팅 - 변수를 선언하기 전에 참조가 가능하다. ※ 전역 변수의 문제점 - 유효범위(scope)가 넓어서 어디에서 어떻게 사용될 것인 파악하기 힘들다. - 비순수 함수(impure function)에 의해 의도하지 않게 변경될 수 있어서 복잡성을 증가 let 1. 블록 레벨 스코프 대부분의 C-family 언어..
-
소개 ... 배열 - 자바스크립트 기본 | 생활코딩Javascript/ECMAScript 2009 (ES5) 2020. 2. 1. 12:15
[출처 : https://opentutorials.org] 자바스크립트 소개 탈웹브라우저 - 자바스크립트가 웹브라우저를 제어하는 용도로만 사용되지 않음. - 자바스크립트라는 언어와 동작 환경을 분리해서 생각해야함 - 자바스크립트의 용도 - 웹서버 동작 : 서버사이드 스크립트 *Node.js 탈웹 - 웹 바깥쪽의 기술에서 사용 *Google Apps Script 언어란? - 의사소통을 위한 약속(문법)이며, 언어를 배운다 = 문법을 익힌다 환경이란? - 언어를 사용하는 대상 => 자바스크립트가 동작하는 환경 *웹브라우저, Node.js - 환경에 따라서 할 수 있는 일과 명령이 다르다. 숫자와 문자 # Math.random(); 1보다 작은 불규칙한 소수점. - n*Math.random(); 은 n 보다..