자바스크립트(14)
-
[Javascript] 14장 전역변수의 문제점
14.1 변수의 생명 주기 14.1.1 지역 변수의 생명 주기 전역 변수의 생명 주기는 애플리케이션의 생명 주기와 같지만, 함수 내부에서 선언된 지역 변수는 함수가 호출되면 생성되고 함수가 종료하면 소멸. 변수 선언은 코드가 한 줄씩 순차적르호 실행되는 시점인 런타임에 실행되는 것이 아니라 럼타임 이전 단계에서 자바스크립트 엔진에 의해 먼저 실행됨. 그런데, 엄밀히 말하면 위의 설명은 전역 변수에 한정된 얘기이고, 함수 내부에서 선언한 변수는 함수가 호출된 직후에 함수 몸체의 코드가 한 줄씩 순차적으로 실행되기 이전에 자바스크립트 엔진에 의해 먼저 실행됨. 즉, 지역 변수의 생명 주기는 함수의 생명 주기와 일치함. 호이스팅은 스코프를 단위로 동작하기 때문에, 전역 변수의 호이스팅은 전역 변수의 선언이 전..
2021.04.16 -
[Javascript] 13장 스코프
13.1 스코프란? - 모든 식별자(변수 이름, 함수 이름, 클래스 이름 등)는 자신이 선언된 위치에 의해 다른 코드가 식별자 자신을 참조할 수 있는 유효 범위가 결정됨. 이를 스코프라 하는데, 스코프는 식별자가 유효한 범위를 의미함. - 스코프를 자바스크립트 엔진이 식별자를 검색할 때 사용되는 규칙이라고도 할 수 있음. - 스코프를 네임스페이스라고도 할 수 있음. * var 키워드로 선언된 변수는 같은 스코프 내에서 중복 선언이 허용됨, 이는 의도치 않게 변수값이 재할당되어 변경되는부작용을 발생시킴. function foo(){ var x=1; //var 키워드로 선언된 변수는 같은 스코프 내에서 중복 선언을 허용함 //아래 변수 선언문은 자바스크립트 엔진에 의해 var 키워드가 없는 것처럼 동작함 v..
2021.04.14 -
[Javascript] 11장_원시 값과 객체의 비교
7가지 데이터 타입(숫자, 문자열, 불리언, null, undefined, 심벌, 객체 타입)은 크게 원시 타입(primitive type)과 객체 타입(object/reference type)으로 구분할 수 있음. 원시 타입(primitive type) 객체 타입(object/reference type) 원시 타입의 값, 즉 원시 값은 변경 불가능한 값(immutable value) 객체(참조) 타입의 값, 즉 객체는 변경 가능한 값(mutable type) 원시 값을 변수에 할당하면 변수(확보된 메모리 공간)에는 실제 값이 저장됨. 객체를 변수에 할당하면 변수(확보된 메모리 공간)에는 참조 값이 저장됨 원시 값을 갖는 변수를 다른 변수에 할당하면 원본의 원시 값이 복사되어 전달되는데, 이를 값에 의한..
2021.04.07 -
[jQuery] CSS스타일 변경하기
CSS스타일 변경하기 $('선택자').css('속성', 값); 선택자 : CSS와 같은 선택자를 지정. 지원되지 않는 것도 있지만 특정요소를 지정하는데는 문제 없음 속성 : CSS속성을 지원 값 : 속성에 설정할 값을 지정 '선택자에 해당하는 요소의 CSS속성의 값을 변경한다'라는 처리를 수행 // $(document).ready(function(){ //docuemnt(HTML)로드완료시 // $('h1').css({'color':'red'}); // }); $(function(){ //docuemnt(HTML)로드완료시 //css속성 하나를 변경 $('h1').css('color','red'); //css속성 여러개를 한번에 변경 //값의 수치에는 따옴표('')를 붙이지 않아도 되지만 퍼센트(%)단위..
2020.11.19 -
[jQuery] jQuery 기본이해 / 스크립트파일작성방법
라이브러리 자주사용하는 기능화 효과(그들을 실행하는 프로그램)을 Javascript코드로 미리 만들어 두고 재활용할 수 있게 한 것 jQuery 특징 스크립트 코드보다 먼저 라이브러리 선언을 해주어야 함 문법이 간결함 사용하기 쉬움 빠르게 배울 수 있음 다른 라이브러리들과 충돌을 일으키지 않음 다야한 플러그인이 존재함 브라우저 호환성 문제를 해결해줌 MIT and GPL licenses jQuery라이브러리 다운로드 url : code.jquery.com/ jQuery 1.x 버전까지만 IE9를 지원함 (jQuery 2.x, 3.x ,... IE9 지원안함) uncompressed : 압축안된버전이므로 용량이 크고 로드시 느림, 주석이 상세함 , 코드이해하기 좋음 minified : 압축된버전이므로 로드..
2020.11.19 -
[JS] 문서 로드시점(onload,$(document).ready())
onload [ JAVASCRIPT] window.onload = function(){ //실행될 코드 } 문서의 모든 컨텐츠(images, script, css, etc)가 로드된 후 발생하는 이벤트(load이벤트) 문서에 포함된 모든 컨텐스가 로드된 후에 실행되기에 불필요한 로딩시간이 추가될 수 있음 동일한 문서에 오직 'onload'는 하나만 존재해야 함 (중복될 경우, 마지만 선언만이 실행됨) 요소의 속성(attribute)으로 지정될 수 있음. 위와같이 요소의 속성으로 onload가 사용된 경우에는 'window.onload'는 무시됨 window객체뿐만 아니라 원하는 객체(object)가 로드되었을 때 실행될 코드를 설정할 수도 있음 document.getElementById("myFrame"..
2020.11.19