위와 같은 배열이 있다고 하자. 해당 배열안에 있는 값들을 화면에 표출하거나 각각 수정을 하려면 반복문이 필요하다. java에서는 for문과 while문을 이용한다. 물론 javascript에서도 for문과 while문을 이용할 수 있다. [좌] for문을 이용한 배열(arr) 출력 [우] while문을 이용한 배열(arr) 출력 이게 평범하게 배열안에 있는 값들을 추출하는 방법이지만 javascript에서는 forEach라는 내장함수를 제공한다. 배열.forEach( function(e) { 작업내용 } ); 위와 같이 배열.forEach( function(e) { 작업내용 } );과 같이 표현한다. 보통 배열안에 있는 값을 추출하거나 값을 수정할때는 배열 안에 있는 값만 필요하기 때문에 인수를 하나만..
다음과 같은 배열이 있다고 생각해보자. 해당 test배열은 12개의 객체를 포함하고 있는 배열이다. 만약 이 배열에 있는 12개의 객체에서 제작수 라는 변수의 value값만을 추출해야한다면 보통 test 배열의 length만큼 for문을 돌려서 제작수 라는 변수를 추출하는 방법이 있다. 근데 이렇게 하면 for문을 돌려야 하는데 map함수를 이용하면 for문을 돌리지 않고 객체 안에서 원하는 값을 추출할 수 있다. 위와 같이 map함수를 이용하면 배열안 객체에서 특정값을 추출하여 배열에 삽입을 할 수 있다. 이외에도 객체에서 원하는 값들로 구성된 객체를 다시 배열에 넣을 수도 있다. 해당 객체에서 꺼내고 싶은 값들을 { } 으로 묶어서 객체화 한 뒤 return만 해주면 객체에서 원하는 값들을 추출해 다..
게시판을 만들고 있는데 한 사용자가 가지고 있는 권한 관련 체크를 해야되는 상황이 생겼다. 평소라면 그냥 for문이나 while문을 돌려서 해당 권한을 가지고 있는지 배열의 길이 만큼 돌려서 했겠지만 이번에는 같이 일하는 담당분이 for문이랑 while문을 쓰지 말고 javascript에서 지원하는 findIndex 함수를 사용해보라고 해서 한번 정리해본다. 위의 코드는 내가 항상 배열 안에 어떤 값이 있나 체크 할 때 쓰던 평소의 코드이다. 해당 리스트의 length만큼 for문을 돌려서 해당 배열에 해당 값이 있나 없나 하나하나 체크를 하는 아주 단순한 코드 for문과 같은 반복문은 연산을 하기 때문에 서버에 부하가 갈 수 있어 좋지 않다고 한다.. 그래서 javascript에서 지원하는 findIn..
javascript의 자료형 javascript에서의 변수는 언제든지 자료형(data type)이 변할 수 있다. 숫자형이었다가, 문자형이 되기도 한다. 이렇게 변수에 담겨져 있는 데이터 타입을 언제든지 바꿀 수 있는 언어를 '동적언어' 라고 한다. 1. 숫자형 숫자형은 정수 및 부동소수점 숫자를 나타낸다. 연산을 실행할 수 있다. 일반적인 숫자외에 Infinity, -Infinity, NaN과 같은 특수 숫자값이 포함된다. * Infinity는 무한대를 의미한다. 어떤 값이든 0으로 나누면 Infinity값이 된다. * NaN은 연산 중 에러가 발생했을 때 뜨는 특수 숫자값이다. 예를 들면 아래와 같이 숫자가 아닌 값을 나눌때와 같은 에러 발생시 나타난다. javascript에서의 수학연산은 대체로 안..
문 문이란 어떤 작업을 수행하는 문법구조와 명령어를 의미한다. 보통 문은 세미콜론으로 구분 짓는다. 와 같이 각 문을 구분지어 실행된다. 하지만 javascript에서는 줄바꿈을 하면 세미콜론을 작성하지 않아도 정상적으로 실행이 된다. 이를 '암시적' 세미콜론 이라고 하며, 이런 동작방식을 세미콜론 자동삽입 이라고 한다. ( 연산 등의 특정문은 제외 ) 하지만 몇몇 예외 조건들이 있고 줄바꿈을 하더라도 기본적으로 세미콜론을 붙이는 것이 좋다. ----------------------------------------------------------------------------------------------------------------------------------- 엄격모드('use strict..
ECMAScript(javaScript) 메모 엔진 동작원리 1. 엔진(브라우저라면 내장엔진)이 스크립트을 읽음 = 파싱 2. 스크립트를 기계어로 변환 = 컴파일 3. 기계어로 전환 된 코드를 실행 내장엔진 종류 1. V8 : Chrome, Opera 2. spiderMonkey : Firefox 3. Trident or Chakra : IE javaScript의 강점 1. HTML과 CSS를 완전히 통합할 수 있음. 2. 간단한 일은 간단하게 처리 할 수 있게 해줌. 3. 모든 주요 브라우저에서 지원하고, 기본언어로 사용됨 1. 태그 안에 javascript 코드를 입력하면 안에 있는 코드는 엔진에 의해 자동으로 실행됨(엔진 동작원리 참조) 2. 태그 안에 type="text/javascript"와 같..