본문 바로가기

거침없이 배우는 자바스크립트17

이미지 미리 읽기 이미지를 미리 읽어둔다(preloading)는 것은 브라우저로 하여금 이미지를 보여주기 전에 미리 다운로드하도록 만드는 것을 의미합니다. 이미지는 다운로드된 후 웹 브라우저의 캐시에 저장되고 이후 발생하는 요청은 웹 서버로부터 시간을 들여 다운로드받는 대신 방문객의 하드 드라이브로부터 해당 파일을 제공받습니다. 미리 읽어두기를 위한 방법 중 하나는 스크립트의 첫부분에 미리 읽어두고자 하는 모든 그래픽 파일의 경로를 담은 배열을 생성한 다음, 이 배열에 루프를 수행하여 각각에 대한 새 이미지 객체를 생성하는 것입니다. var preloadImages = ['images/1.png', 'images/2.png', 'images/3.png']; var imgs = []; for (var i=0; i 2012. 1. 17.
중첩배열 C나 자바로 코딩을 할때는 이차원배열을 사용했었던 것 같은데 자바스크립트 책에서 중첩 배열(nested array) 을 보니까 어디서 본 것 같으면서도 낯설었다. 이런식으로 질문과 정답을 포함한 배열을 하나 만들고, questions 배열에 하나의 원소로서 저장을 할 수 있었다. 사용할때는 prompt로 물어봐서 질문에 맞는 답을 썼는지 확인할 것인데 최종예제는 이렇게 된다. 먼저 질문 3개를 보여주기 위해 0부터 하는데 그럼 0번째 줄에 있는 문제가 출제된다. 그후 askQuestion에서는 그 줄의 질문을 물은 후 답을 answer 변수에 저장을 하고 두번째 question[1]에 담긴 변수와 같은지 확인을 한다. 책에 이차원배열이란 말이 없어서 아리송 했는데 이거 같다. 음, question[3][.. 2012. 1. 8.
배열에 원소 추가, 삭제하는 방법 메소드 원래의 배열 예제 코드 결과 배열 설명 .length property var p = [0,1,2,3] p[p.length]=4 [0, 1, 2, 3, 4] 배열 끝에 한가지 값을 추가 push() var p = [0,1,2,3] p.push(4,5,6) [0,1,2,3,4,5,6] 배열 끝에 하나 이상의 값을 추가 unshift() var p = [0,1,2,3] p.unshift(4,5) [4,5,0,1,2,3] 배열 앞에 하나 이상의 값을 추가 push()와 unshift() 메소드는 배열의 전체 원소 개수를 반환한다. 메소드 원래의 배열 예제 코드 결과 배열 설명 pop() var p=[0,1,2,3] p.pop() [0,1,2] 배열의 마지막 원소 제거 shift() var p=[0,1,2.. 2012. 1. 4.
자바스크립트 문자를 숫자로 문자열 앞에 '+'를 추가하면 숫자로 인식된다. var num1 = '2'; var num2 = 4; 일때 var total = num1 + num2; 의 결과는 문자들로 인식되어 24가된다. 원래 원하는 값은 6이 었겠지만 num1이 문자열이기 때문에, 자바스크립트 해석기가 변수 num2의 값도 문자열로 바꿔버린다. 이런 에러를 방지하기 위해서 var total = +num1 + num2; +기호를 변수 앞에 붙이면(변수와 + 기호 사이에 공백이 없어야 한다) 자바스크립트 해석기가 문자열을 숫자값으로 변환하게한다. 그래서 이 결과는 6이 나오게 된다. 또 다른 방법으로는 var total = Number(num1) + num2; 가 있다. Number()는 가능할 경우 문자열을 숫자로 변환한다("가능할.. 2012. 1. 4.
자바스크립트는 자바스크립트는 웹 디자인을 구성하는 2개의 기둥인 HTML과 CSS가 함께 있어야만 한다. HTML은 그림이나 글을 의미있게 조직하는 구조적인층 CSS는 HTML로 구성된 컨텐츠를 보기 좋게 전시하는 층 자바스크립트는 방문객들과 인터랙션할 수 있도록 웹 페이지를 현실로 데려오도록 행동하는 층 으로 비유한다. 2012. 1. 4.