본문 바로가기

반응형

언어

(70)
javascript : eval 자바스크립트는 문자열을 코드로 실행할 수 있는 특별한 함수를 제공한다. Eval() 함수는 문자열을 자바스크립트 코드로 실행하는 함수입니다. 이 책에서는 가끔 코드를 직접 입력하기 귀찮을 때 반복문과 함께 사용합니다. var willEval = ''; willEval += 'var number = 10;'; willEval += 'console.log(number);'; eval(willEval); 10 Eval로 실행한 함수는 코드상에 적용된다. var willEval = ''; willEval += 'var number = 10;'; willEval += 'console.log(number);'; eval(willEval); console.log(number); 10 10
javascript : 인코딩과 디코딩 함수 함수 이름 설명 escape() 적절한 정도로 인코딩 합니다. unescape(() 적절한 정도로 디코딩 합니다. encodeURI(uri) 최소한의 문자만 인코딩합니다. decodeURI(encodedURI) 최소한의 문자만 디코딩합니다. encodeURIComponent(uriComponent) 문자 대부분을 모두 인코딩합니다. decodeURIComponent(encodedURI) 문자 대부분을 모두 디코딩합니다. 그런데 적절한과 최소한, 대부분의 차이는 무엇인가. 이는 다음과 같이 정리할 수 있습니다. escape() 영문 알파벳과 숫자, 일부 특수 문자(@,*,-,_,+,../)를 제외하고 모두 인코딩합니다. 1바이트 문자는 %XX의 형태로, 2바이트 문자는 %uXXXX 형태로 변환합니다. en..
javascript : 타이머 함수 타이머 함수는 특정 시간에 특정 함수를 실행할 수 있게 하는 함수입니다. 메서드 이름 설명 setTimeout(function,millisecond) 일정 시간 후 함수를 한 번 실행합니다. setInterval(fucntinon,millisecond) 일정 시간마다 함수를 반복해서 실행합니다. clearTimeout(id) 일정 시간 후 함수를 한 번 실행하는 것을 중지합니다. clearInterval(id) 일정 시간마다 함수를 반복하는 것을 중단합니다. // 1초마다 함수를 실행합니다. var intervalID = setInterval(function () { console.log('' + new Date() + ''); },1000); setTimeout(function(){ clearInter..
javascript : 클로저 function test(name){ var output = 'Hello' + name +' ..!'; } console(output); 위와 같은 코드는 실행되지 않는다... (근데 var는 전역이라고 햇던것 같은데..? 알아보니 일반 스코프와 함수 스코프는 느낌이 다른듯하다.) var는 함수가 호출될시 생성되고 호출이 끝난후 사라진다. function test(name){ var output = 'Hello' + name + '...!'; return function(){ console.log(output); }; } test('JavaScript')(); 위에는 var에 있는 값을 접근 할 수 있다. test('Javascript') 가 함수자체라면 ()
javascript : callback 함수 javascript는 함수형 프로그래밍이라고도 할수 있다. 함수 자체를 하나의 값으로 보고 프로그래밍 하는 형식.. 따라서 다음과 같이 코딩이 가능하다. //함수자체를 하나의 값으로 사용함. function callTenTimes(callback) { for (var i = 0; i < 10; i++) { callback(); } } var callback = function(){ console.log('함수호출'); }; callTenTimes(callback); 함수호출 함수호출 함수호출 함수호출 함수호출 함수호출 함수호출 함수호출 함수호출 함수호출
javascript : arguments function sumAll(){ console.log(typeof(arguments) + ' : '+ arguments.length); } //함수를 호출합니다. sumAll(1,2,3,4,5,6,7,8,9,10); object : 10 function sumAll(){ var output = 0; for (var i = 0; i
javascript : array var array1 = Array(); var array2 = Array(10); var array3 = Array(273, 103, 57, 32); console.log(array1 + '\n' + array2 + '\n' + array3); ,,,,,,,,, 273,103,57,32 함수 형태 설명 Array() 빈 배열을 만듭니다. Array(number) 매개변수 값만큼의 크기를 가지는 배열을 만듭니다. Array(any,...,any) 매개변수를 배열로 만듭니다.
javascript : var 키워드의 비동기 함수 문제 for (var i = 0; i { console.log(i); }, 1000 * i); } 아무 생각없이 출력결과를 생각해본다면 0 1 2 가 찍힐것 같다. 하지만 3 3 3 var값은 말그대로 전역에 있는 값이다. setTimeout이 1초후에 var i를 접근한다 그때 값이 3이라서 이런 결과가 나온다. for (let i = 0; i { console.log(i); }, 1000 * i); } let을 사용하면 원하는 결과가 나온다. (이런 동기 비동기를 주의 해야한다.) 0 1 2

반응형