javascript란? 웹사이트를 만들기 위한 프로그래밍 언어이자 객체 기반의 스크립트 프로그래밍 언어이며 HTML의 특정 요소(들)를 선택하여 다양한 이벤트 (마우스 클릭, 키보드 입력 등)에 따라 어떤 동작을 하도록 기능을 넣을 수 있으며 발생하는 이벤트에 따라 HTML, CSS를 조작할 수도 있고 그 외에도 여러 가지를 할 수 있다. javascript를 배워야하는이유 웹은 계속 빠르게 발전하고 있다. 즉 javascript도 또한 같이 성장하고 있기에 웹 개발에 있어서 javascript의영향력은 더 커질 수 있다 javascript를 통해 다양한 콘텐츠들을 만들어낼 수 있다 -> 웹사이트, 웹앱, 모바일 애플리케이션, 비디오 게임, 데스크톱 앱 웹에 특화된 기술이기 때문에 운영체제나 플랫폼에 상..
함수를 호출 1) 함수를 호출하는 다른 방법 함수는 function 객체의 인스턴스이므로, function의 apply 메소드로도 호출이 가능 o1 = {val1:1, val2:2, val3:3} o2 = {v1:10, v2:50, v3:100, v4:25} function sum(){ var _sum = 0; for(name in this){ // 이 경우 this의 맥락은 호출할 때 정해짐 _sum += this[name]; } return _sum; } console.log(sum.apply(o1)) // 6 console.log(sum.apply(o2)) // 185 /* apply 메소드의 첫번째 인자에 입력된 o1, 혹은 o2는 * var this = o1; 처럼 정의된 것과 같은 효과, * ..
클로저 1) 클로저 개념 함수 outter의 리턴 값은 내부함수다. 그리고 변수 inner에 내부함수가 값으로 저장된다. outter 호출이 종료된 순간, outter는 사라진다. 하지만, inner()를 실행했을 때 알럿창에 coding everybody가 보인다. 내부함수는 외부함수가 종료되도 외부함수에 접근할 수 있다. function outter() { var title = 'coding everybody'; return function(){ alert(title); } } inner = outter(); inner(); private variable function factory_movie(title){ return{ get_title : function(){ return title; }, se..
값으로서의 함수와 콜백 1) 함수용도 1 자바스크립트에서는 함수도 객체이며, 함수도 값이 될 수 있다. function a(){} //함수는 a라는 변수에 담겨진 값. var a = function(){} a = { b : function(){ } } //함수는 객체 안에 저장될 수 있다. //b는 key, 객체 안에서 변수 역할(어떤 값을 저장하고 있기 때문) = 속성(property) //속성에 저장된 값이 함수면 메소드라 부름. //즉, a라는 객체에 b라는 속성이 있는데, 이 속성의 값은 함수(메소드)다. function cal (func, num){ return func(num) } function increase (num){ return num+1; } alert (cal (increase, ..
유효범위 1) 전역변수와 지역변수 전역변수 : 애플리케이션 전역에서 접근 가능한 변수 예제1) 지역변수와 전역변수의 구분1 var vscope = 'global'; //전역변수 function fscope(){ alert(vscope); } fscope(); //global 지역변수 : 함수 내에서만 접근 가능한 변수 예제2) 지역변수와 전역변수의 구분2 var vscope = 'global'; function fscope(){ var vscope = 'local'; //지역변수 var lv = 'local value'; //지역변수 alert(vscope); } fscope(); //local alert(lv); //undefined for문의 i는 전역변수기 때문에 해당 코드는 계속 실행되다가 브라우..
객체 1. 객체(Object) - 객체의 생성 var grades = {'egoing': 10, 'k8805': 6, 'sorialgi': 80}; : egoing은 key가 되고, 10은 value가 된다 - 다른 객체 생성 방법 var grades = {}; grades['egoing'] = 10; grades['k8805'] = 6; grades['sorialgi'] = 80; - 다른 객체 생성 방법 var grades = new Object(); grades['egoing'] = 10; grades['k8805'] = 6; grades['sorialgi'] = 80; - 객체 출력 var grades = {'egoing': 10, 'k8805': 6, 'sorialgi': 80}; alert(g..
배열 1. 배열의 문법 배열(array)이란 연관된 데이터를 모아서 통으로 관리하기 위해서 사용하는 데이터 타입이다. 변수가 하나의 데이터를 저장하기 위한 것이라면 배열은 여러 개의 데이터를 하나의 변수에 저장하기 위한 것이라고 할 수 있다. var name = 'egoing'; alert(name); var member = ['egoing', 'k8805', 'sorialgi']; // 배열 alert(member[0]); // egoing 출력 alert(member[1]); //k8805 출력 alert(member[2]); // sorialgi 출력 배열에 담겨있는 값을 가져올 때는 대괄호 안에 숫자를 넣는다. 이 숫자를 색인(index)라고 부르고 0부터 시작한다. 즉 첫번째 원소(egoing)..