목록함수 (5)
삶 가운데 남긴 기록 AACII.TISTORY.COM
화살표 함수 표현식 var square = function(x){ return x*x; }; //화살표 함수 표현식 var square = (x) => { return x*x; }; //인수가 한개이면 인수를 묶는 괄호를 생략할 수 있습니다. var square = x => { return x*x; }; //인수가 없는 경우 var f = () => { return alert("x"); }; //함수 몸통이 return 뿐이면 return 키워드도 생략 가능 var square = x => x*x; //함수 몸통이 return 뿐이라도 객체를 리턴하면()으로 묶어야 함 var f = (a, b) => ({x: a, y: b}); //즉시 실행 함수 (x => x*x)(3); // 9 this가 함수를 정..
네임 스페이스(name space) 전역 유요 범위 안에 함수나 변수 객체들을 선언하면 라이브러리나 규모가 큰 프로그램을 만들 때 이름이 겹칠 우려가 있습니다. 네임 스페이스는 변수 이름과 함수이름을 한 곳에 모아서 충돌을 방지하는 방법입니다. 객체를 네임 스페이스로 활용 객체를 전역 변수로 하나 생성하고 그 객체에 프로그램 전체에서 사용하는 모든 변수와 프로퍼티를 정의하는 방법입니다. 함수를 네임 스페이스로 활용 함수 안에서 선언된 변수의 유효 범위는 함수 내부이기 때문에 함수 바깥에서는 읽거나 쓸 수 없는 성질을 이용하는 방법입니다. 모듈 패턴 showName 메서드는 getName을 참조하고 있고 setName 메서드는 name을 참조하고 있습니다. 지역변수 name과 지역함수 getNmae은 클로..
실행 가능 코드(Excutable Code) 실행 가능 코드를 만나면 Evaluation 해서 Execution Context로 만듭니다. window object 에 정의 된 함수 일반 함수 eval() : 일반적인 함수와 다르게 동적인 환경에서 실행 Execution Contexts 는 실행에 필요한 모든 정보를 관리합니다. 렉시컬 환경 컴포넌트(LexicalEnvironment Component) 함수 블록의 유효범위 안에 있는 식별자와 그 결과값이 저장되는 곳입니다. 식별자와 그 값을 가리키는 키쌍으로 바인드해서 렉시컬 환경 컴포넌트에 기록합니다. 환경 레코드(Environment Record) 유효 범위 안의 식별자를 기록하고 실행하는 영역. 식별자와 결과값을 바인드해서 환경 레코드에 기록합니다..
리터럴로 객체(object) 생성 예제 var card1 = {suit:"클로버", rank:"Q"}; var card2 = {"suit":"하트", "rank":"K"}; //object의 값을 불러올때는 .키값 이나 대괄호[] 안에 키값을 사용합니다. console.log(card1.suit); console.log(card2["rank"]); //object에 새로운 property를 추가 삭제 할 수 있습니다. card1.value = 11; console.log(card1); //{suit:"클로버", rank:"Q", value:11} delete card1.rank; console.log(card1); //{suit:"클로버", value:11} //property 존재 확인 console...
GetLastError() 윈도우즈 시스템 함수들은 에러가 났을 때 리턴 값이 대개 NULL 이기 때문에 에러 원인을 알 수 없습니다. 이럴 때 사용하는 함수가 GetLastError 함수를 사용하면 에러코드를 획득할 수 있습니다. 이 에러코드는 MSDN을 참고하면 무슨 에러인지 알 수 있게 됩니다. #include #include #include int _tmain(void) { HANDLE hFile = CreateFile(_T("TEST.DAT"), GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL); if (hFile == INVALID_HANDLE_VALUE) { _tprintf( _T("error co..