반응형
console.log(typeof 'John');
=> string

console.log(typeof 3.14);
=> number

console.log(typeof NaN);
=> number

console.log(false);
=> false  => boolean임.

console.log(typeof [1, 2, 3, 4]);
=> object

console.log(typeof {name:'John', age:34});
=> object

console.log(typeof new Date());
=> object

console.log(typeof function () {});
=> function

console.log(typeof myCar);
=> undefined

console.log(typeof null);
=> undefined
반응형
반응형


자바스크립트 숫자형(Number)은 숫자형태를 가진 데이터를 뜻한다.

그 중 Infinity 와 NaN이라는 값이 존재한다.


숫자형으로 분류되지만 우리가 알고 있는 일반적인 숫자형과는 다른 역할을 수행한다.

console.log(Infinity);
console.log(1/Infinity);
console.log(0/0);
console.log(Infinity-Infinity);
console.log(0/'의미없는 문자열');

위 호출의 결과값은

Infinity
0
NaN
NaN
NaN


수학적으로 무한대를 의미하는 Infinity 는 다른 어떤 수보다 가장 큰 수를 뜻한다.

NaN은 'Not a number' 라는 뜻으로 산술 연산의 결과가 유효하지 않은 값 또는 숫자가 너무 커서 표현할 수 없는 값일때 NaN으로 표현된다.

유효하지 않은 수식인 경우에도 NaN으로 표현될수 있다.


※ Infinity로 나누면 무슨 값이든 0이다.

반응형
반응형
//반복문 while
/*
소괄호 조건에는 반드시 true, false 를 만족하는 조건식을 작성해야함.
소괄호안에 조건이 만족하면 중괄호 {} 안에 문장이 실행된다.
break와 continue를 사용할 수 있다.
*/

while(조건식){
  반복하게 될 로직
}


//반복문 do-while
/*
do-while 반복문은 while과 조금의 차이가 있다.
맨앞에 위치만 지시어 do의 사전적의미 그대로 처음에는 조건의 결과와는 상관없이 무조건 문장을 실행(do)한다.
이후 조건식의 결과값을 확인하고 다음의 흐름은 이전 while과 동일하게 동작한다.
*/
do{
  반복하게 될 로직
}while(조건식)

//예제
var homeTown = [
  {name:'철수',place:'일산',city:'고양'},
  {name:'영희',place:'과천',city:'경기도'},
  {name:'민수',place:'광주',city:'전라도'},
  {name:'지은',place:'부산',city:'경상도'}
];

//function isHomeTown(h,name){ } 와 동일하게 사용할수 있다.
var isHomeTown = function(h, name){
  console.log(`함수가 실행되었습니다. ${h.city} 도시에서 ${name}을 찾습니다.`);

  if(h.name === name){
    console.log(`${h.name}의 고향은 ${h.city} ${h.place}입니다.`);
    return true;
  }
  return false;
}

//while 의 사용 예제.
var h;
while(h = homeTown.shift()){
  if(!h.name || !h.place || !h.city) continue;

  var result = isHomeTown(h,'민수');

  if(result) break;
}


//do while 의 사용 예제.
var i =  0;
var names = ['철수','영희','민수','지은'];
var cities = ['일산','광주','부산','과천'];

do{
  homeTown[i] = {name:names[i] , city : cities[i]};
  i++;
}while(i<4);

console.log(homeTown);
반응형
반응형
//반복문 for-in 용법
/*
for 기본 사용법과는 다르게 for-in 용법은 순회조건과 내부 요소에 접근하는 방법에 차이가 있다.
in 키워드를 사이에 두고 오른쪽에는 반복할 대상 변수를, 왼쪽에는 속성명을 작성한다.
*/
for(속성명 in 반복할 대상){

}


//예시
//store변수에 객체 할당.
var store = {snack:1000, flower:5000, beverage:2000};

//객체를 순환하는 for-in 반복문
//여기서 변수 item은 store객체의 요소를 접근하는 속성명.
for(var item in store){
  // hasOwnProperty 함수를 이용하여 store객체에 속성명으로 정의한 item. 즉 key값이 있는지 확인한다.
  //없다면 다음 로직 진행하지 않고, 다음 순서로 통과.
  //반드시 아래 구문을 이용하여 객체안에 값이 있는지 검사하는것이 좋다. 
  if(!store.hasOwnProperty(item)) continue;

  //아래 item 속성에는 객체에 접근한 key값이 출력된다. 또한 store에 해당 키값을 이용하여 value값을 가져올 수 있다.
  console.log(item+'는 가격이'+store[item]+'입니다.');
}

//결과
snack는 가격이1000입니다.
flower는 가격이5000입니다.
beverage는 가격이2000입니다.
반응형

+ Recent posts