'Javascript'에 해당되는 글 112건

  1. 2011.11.24 Javascript Literal이란? 5
  2. 2011.11.21 동기와 비동기 차이점

Javascript Literal이란?



Literal(데이터값)이란?


정의: 모든 데이터 타입에 들어가는 데이터값 그 자체.



1. Integer Literal?


자바스크립트에서 정수는 -9007199254740992(-253)에서 9007199254740992(253) 사이에 있는(이 두 수를 포함하여) 모든 정수를 표현할 수 있다.

단, 비트 단위연산자(bitwise operator)는 -2147483648(-231)에서 2147483647(231-1)에 이르는 32비트 정수에 대해서만 작동한다.


// 앞서 말했듯이 해당 데이타 타입이 가지는 "유한 수" 보다 크거나(+) 작은 값(-)을 할당 시 JS는 그 유한 수 이상/이하를 출력하지 못한다.
console.log(parseInt(-9007199254740992 + -1, 10));
console.log(parseInt(9007199254740992 + 1, 10));


2. Floating point Literal?

자바스크립트에서에서 실수는 정수 부분과 소수점, 소수점 이하 부분으로 표현된다.



3.14
2345.789
.33333333333333
6.02e23                // 6.02 ×× 1023
1.4738223E-32      // 1.4738223 ×× 10-32


3. String Literal
?

자바스크립트에서 문자열은 0개('') 또는 하나 이상의 Unicode 문자들이 작은따옴표('') 

혹은, 큰따옴표("")로 둘러싸인 시퀀스다



"" // 빈 문자열: 문자가 없다.
'testing'
"3.14"
'name="myform"'
"wouldn't you prefer O'Reilly's book?"
"This string\nhas two lines" // 두 줄짜리 문자열
" π is the ratio of a circle's circumference to its diameter"
.



4. Function Literal이란?


자바스크립트는 함수를 정의하는 "함수 리터럴" 문법도 제공한다.



var literal = function(x) { return x; }


이름 없는 함수(익명함수)를 프로그램 내에 리터럴 형태로 포함시킬 수 있게 한 최초의 언어인 "Lisp" 프로그램 언어를 기리는 의미에서, 이러한 방식으로 정의된 함수를 람다함수(lambda function)라고 부른다.



함수 리터널을 구현하는 또다른 방식.


var literal = new Function("x", "return x;");





5. Object Literal이란?



자바스크립트는 객체를 생성하고 프로퍼티를 지정하는 객체 리터럴 문법을 제공한다.

1. 블록안에 객체 Property를 콜론(:)으로 구별한 (key: value)형태의 값을 정의하고 각각의 Property를 쉼표(,)로 분리한다.


var obj =
{
    x: 2.3
    , y: -1.2
};

2. 객체 리터널을 아래와 같이 자바스크립트만의 표현식을 사용할 수 도 있고 중첩된 객체

활용
가능하다.


var obj =
[
    {x: {x: 2.3, y:-1.2}, y: {x: 2.3, y:-1.2}}
    , {x: {x: 2.3, y:-1.2}, y: {x: 2.3, y:-1.2}}
    , {x: {x: 2.3, y:-1.2}, y: {x: 2.3, y:-1.2}}
];



3. 또한 아래와 같은 2가지 형태의 리터널 정의도 가능하다.



var obj = new Object()
obj.name = 'test';
 
var fnObj = new function(){ this.name = 'test'; return this };



6. Regexp literal(정규 표현식 리터널)이란?


var regex = /[a-z]/g;




7. Array Literal이란?

기본 형태:

var array = new Array(1, 2, 3);


확장 형태:


var array = [1, 2, 3];




동기와 비동기 차이점


동기:
 

SYSTEM: 명령이 끝날때 까지 사용자에게 제어권을 돌려 주지 않는다.
 

WEB(기본 HTTP 요청): 서버 응답이  끝날때 까지  사용자에게 제어권을 돌려 주지 않는다.


비동기:
 

SYSTEM: 명령이 끝나기전 사용자에게 제어권을 돌려 준다.
 

WEB(XMLHttpRequest 요청): 서버 응답이 끝나기전 사용자에게 제어권을 돌려 준다.



위의 설명과 같이 동기식 과 비동식을 구분하는것은 간단하다.

어떤 루틴이 끝날때까지 제어권이 돌아오지 않으면 동기식 그렇지 않으면 비동기식인 것이다.

prev 1 ··· 9 10 11 12 next