티스토리 뷰

 

 

# 객체를 생성하는 방법 두가지

1 생성자함수를 이용한 객체생성하기

-지금까지 했던방법

 

2 배열을 이용한 객체생성하기

<html>
 <body>
 <script>
 var dog={
  name:"뚱이",
  age:10
 };
 document.write(dog.name);
 document.write(dog["name"]);   //더 동적이다(변수를 쓸수있음) 그래서 더 자주씀
 document.write(dog.age);
 document.write(dog["age"]);
 </script>
 </body>
</html>

 

 

 

# for in

 

<html>
 <body>
 <script>
 var a=[100,200,300];
 for(var index in a){
 document.write(a[index]+"<br/>");  //100,200,300
 }
 </script>
 </body>
</html>

 

<html>
 <body>
 <script>
 var a={b:100,c:200,d:300};
 for(var key in a){
 document.write(a[key]+"<br/>"); //100,200,300
 }
 </script>
 </body>
</html>

 

문제하나낼게.

aa출력해봐라 천천히 해보고 모르겠으면 위에부터 다시공부해라

 

<html>
 <body>
 <script>
 var dataset={
 "memberlist":[
 {"id":"aa","pw":"bb","addr":"cc","tel":"dd"},
 {"id":"ee","pw":"ff","addr":"gg","tel":"hh"}
 ]
 };

 //here
 </script>
 </body>
</html>

[an]  볼려면 드래그하셈.

 document.write(dataset.memberlist[0].id);
 document.write("<br/>");
 document.write(dataset.memberlist[1]["id"]); ​

 

 

# Date객체 (이것도 자바랑 똑같다) 

<html>
 <body>
 <script>
 var a=new Date(2017,4,1);   //   ​메개변수 비우면 지금 니가 이걸 쓰는 지금 날짜.

// 2017,5,1날짜보기(달은 0부터 시작   0->1월,   1->2월,   2->3월,  3->4월,   4->5월,   5->6월 ...)

                                           
 document.write(a.getFullYear()+"년");
 document.write(a.getMonth()+1+"월")
 document.write(a.getDate()+"일");
 var ar=["일","월","화","수","목","금","토"];
 document.write(ar[a.getDay()]+"요일");
 </script>
 </body>
</html>

 

# Array객체

 

<html>
 <body>
 <script>
 var a=[100,200,300];
 var b=[400,500];
 var c=a.concat(b);    // 두 배열을 더한다 (a배열뒤에 b배열이 바로 들어감)
 document.write(c[0]);
 document.write(c[3]);
 </script>
 </body>
</html>

 

 

<html>
 <body>
 <script>
 var a=[100,200,300];
 var b=a.join("***");      //a의 각 인덱스 사이에 원하는값을 join(b는 배열아님)
 document.write(a);
 document.write("<br/>");
 document.write(b);
 </script>
 </body>
</html>​

<html>
 <body>
 <script>
 var a=[100,200,300];
 var b=a.reverse();   //거꾸러
 document.write(a);      //// a도 거꾸러나온다!! a자체가 바뀐다
 document.write("<br/>");
 document.write(b);
 </script>
 </body>
</html>

 

<html>
 <body>
 <script>
 var a=[100,200,300];
 a[a.length]=400;     // a 배열뒤에 인덱스 추가 concat 이랑 다른점:concat은 둘다 배열
 document.write(a[3]); // 400
 </script>
 </body>
</html>

 

 

 

<html>
 <body>
 <script>
 var a=[100,200,300];
 a.push(400);      // 위에랑 똑같음
 document.write(a[3]); // 400
 </script>
 </body>
</html>

 

 

<html>
 <body>
 <script>
 var a=[100,200,300,400,500,600];
 var b=a.slice(2,5);        // 배열계의 substring
 document.write(b[0]);
 document.write(b[1]);
 document.write(b[2]);
 </script>
 </body>
</html> 

 

 

 

<html>
 <body>
 <script>
 var a=[101,23,56,224];
 var b=a.sort();                   // 정렬!! 근데 니가 생각한대로 안나옴     

//  ​왜냐 하나하나 기준삼음(ASCII 문자 순서로 정렬)

                                       예를 들면 1,2,5,2 니까 1,2,2,5 정렬, 그다음 똑같은 2는 22,23 기준으로 정렬
 document.write(a);
 document.write("<br/>");
 document.write(b);
 </script>
 </body>

 

 

// 그래서 우리가 보기 편하게 하려면 함수로 값을 준다.

<html>
 <body>
 <script>
 function asc(v1,v2){return v1-v2;}
 function desc(v1,v2){return v2-v1;}
  var a1=[101,23,56,224];
 var a2=[101,23,56,224];
 var b=a1.sort(desc);
 var c=a2.sort(asc);
 document.write(b);
 document.write("<br/>");
 document.write(c);
 </script>
 </body>
</html>
</html>

댓글