JSON.parse() : JSON형식의 문자열을 자바스크립트 객체로 만든다.

JSON.stringify() : 자바스크립트 객체를 JSON형식의 문자열로 만든다.


; ECMAScript 5부터 JSON지원함.


예)

<script type="text/javascript">

var object = {

name : 'john',

gender : 'male'

}

alert(JSON.stringify(object));

</script>




'WEB > Javascript 함수' 카테고리의 다른 글

Array  (0) 2013.04.15
내장함수  (0) 2013.04.15
prompt():문자열 입력, confirm(): 불리언 입력  (0) 2013.04.15
typeof 연산자 : 자료형을 확인할때  (0) 2013.04.15
문자열관련 함수  (0) 2013.03.27

1. Array 생성자 함수


Array()

Array(number)

Array(1,2,3,4)


변수 선언 >

var arr1 = [1,2,3,4,5];

var arr2 = new Array();

var arr3 = new Array(10);

var arr4 = new Array( 1,2,3,4,5,6,7 );



2. Array 객체의 메서드


 concat()  매개변수로 입력한 요소를 모두 합쳐 배열로 만들어 리턴 

join() 

배열안의 모든요소를 문자열로 만들어 리턴 

pop()* 

배열의 마지막요소를 제거하고 리턴 

push()* 

배열의 마지막부분에 새로운요소를 추가하고 리턴 

reverse()* 

배열의 요소순서를 뒤집는다 

slice 

배열요소의 지정한 부분을 리턴 

sort()* 

배열의 요소를 정렬 후 리턴 

splice()* 

배열요소의지정부분을 삭제하고 삭제요소를 리턴 

* : 자기자신을 변경.



3. sort

: 모든요소를 문자열 오름차순으로 정렬한다.



숫자정렬하는 경우


오름차순>

function ( left, right ){

return left - right;

}


내림차순>

function(left, right){

return right - left;

}


예)

<script type="text/javascript">

var arr = [22,5,36,55,8,15];

arr.sort(function(left,right){

return left - right;

});

alert(arr);

</script>




'WEB > Javascript 함수' 카테고리의 다른 글

JSON  (0) 2013.04.15
내장함수  (0) 2013.04.15
prompt():문자열 입력, confirm(): 불리언 입력  (0) 2013.04.15
typeof 연산자 : 자료형을 확인할때  (0) 2013.04.15
문자열관련 함수  (0) 2013.03.27

1. 객체와 배열은 유사하다. 


배열은 인덱스로 접근하지만 객체는 키로 접근한다.


생성>

<script type="text/javascript">

var product = {

name : 'abcd',

type : 'bag',

made : 'korea'

}

</script>


객체요소접근방법>

  1. product['name'] --> 'abcd'
    product['type'] --> 'bag'
    ...
  2. product.name --> 'abcd'
    product.type --> 'bag'
    ...
; 식별자가 아닌 문자를 키로 사용할 경우는 [ ]를 사용한다. 
; product['made in'] 




2. 객체의 내부 값 --> 속성


name, type, made, ...  :  속성


객체의 속성 중 함수자료형인 경우를 메서드라고 한다.


예)

var person = {

name : '홍길동',

eat : function (food){ }

};


person.eat();





3. 객체 내 반복문 사용 시 for in 사용.


예)

<script type="text/javascript">

var product = {

name : 'abcd',

type : 'bag',

made : 'korea'

}

var output ='';

for(var key in product){

output += '* ' + key + ' : ' + product[key] + '\n';

}

alert(output);

</script>






4. in, with 


in

예)

<script type="text/javascript">

var student = {

name: 'mike',

kor : 100,

mat : 85,

eng : 90

}

var output ='';


output += "'name' in student: " + ('name' in student) + "\n";

output += "'sex' in student: " + ('sex' in student);

alert(output);

</script>



; name은 존재하기 때문에 true, sex은 없으므로 false.



with 

예)


<script type="text/javascript">

var student = {

name: 'mike',

kor : 100,

mat : 85,

eng : 90

}

var output ='';


output += "name: " + student.name + "\n";

output += "kor: " + student.kor + "\n";

output += "mat: " + student.mat + "\n";

output += "eng: " + student.eng + "\n";

alert(output);

</script>

를 


<script type="text/javascript">

var student = {

name: 'mike',

kor : 100,

mat : 85,

eng : 90

}

var output ='';


with(student){

output += "name: " + name + "\n";

output += "kor: " + kor + "\n";

output += "mat: " + mat + "\n";

output += "eng: " + eng + "\n";

}

alert(output);

</script>







5. 속성 추가 및 제거


예) 추가

<script type="text/javascript">

var student = {};

student.name ='홍길동';

student.kor =80;

student.eng =70;

student.mat =60;

</script>


예) 메서드 추가

<script type="text/javascript">

var student = {};

student.name ='홍길동';

student.kor =80;

student.eng =70;

student.mat =60;

student.sum = function(){

var output = 0;

for( var key in this ){

if( key != 'name' ){

output += this[key];

}

}

return output;

}

alert(parseInt(student.sum()));

</script>


예) 속성 제거

delete( student.kor);




1. 인코딩, 디코딩 관련 내장함수


인코딩: 문자를 컴퓨터에 저장하거나 통신에 사용할 목적으로 부호화 하는 방법( 웹상에서 통신할때 한글과 같은 유니코드 문자가 오작동을 일으킬 문제가 있으므로 인코딩 해야 한다. )

디코딩: 문자로 되돌릴때



encoding 

decoding 

 escape

unescape 

 encodeURI(uri)

decodeURI(encodedURI) 

encodeURIComponent(uriComponent) 

decodeURIComponent(encodedURI) 



escape() : 영문알파벳,숫자,일부특수문자(@,*,-,_,+,., / ) 를 제외한 모든문자 인코딩. 1byte 는 %XX형태, 2byte는 %uXXXX.


encodingURI() : escape()에서 인터텟주소에 사용되는 일부 특수문자( :, ;, /, =, ?, & )는 변환되지 않는다.


encodingURIComponent() : 알파벳,숫자를제외한 모든 문자 인코딩. UTF-8인코딩과 동일함.



2.


eval(String) 

String을 javascript코드로 실행한다. 

isFinite(number) 

무한값인지 체크 

isNaN(number) 

NaN인지 

parseInt(string) 

String을 정수로 바꿈 

parseFloat(String) 

String을 유리수로 




- 자바스크립트는 숫자를 0으로 나누면 infinity 값이 들어감.

- NaN : 숫자이지만 자바스크립트로 표현할수 없는 숫자를 의미.

- isFinite , isNaN : 맞으면 true 리턴.



3. parseInt와 Number()의 차이


예)

<script type="text/javascript">

var won = Number("100원");

var dollar = Number("1$");

alert( won + ":" + dollar );

</script>




NaN이 나온다.( 원, $ )


예)

<script type="text/javascript">

var won = parseInt("100원");

var dollar = parseInt("1$");

alert( won + ":" + dollar );

</script>




'WEB > Javascript 함수' 카테고리의 다른 글

JSON  (0) 2013.04.15
Array  (0) 2013.04.15
prompt():문자열 입력, confirm(): 불리언 입력  (0) 2013.04.15
typeof 연산자 : 자료형을 확인할때  (0) 2013.04.15
문자열관련 함수  (0) 2013.03.27

1. 익명 함수의 형식


var 함수 = function(){ };


예) 익명의 함수

<script type="text/javascript">

var 함수 = function(){

alert("alert");

}

alert(함수);

</script>





2. 선언적 함수


function 함수(){


}



3. 익명의 함수와 선언적 함수의 차이


<script>

func();

var func = function() {  a.. };

var func = function() {  b.. };

</script>

이경우 오류가 발생한다. 함수 선언전에 호출하기 때문에.


<script>

func();

function func() { a.. };

function func() { b.. };

</script>

이 경우는 오류없이 실행된다. 






4. 가변인자 함수


매개변수의 개수가 변할수 있는 함수.

자바스크립트는 내부에 자동으로 변수 arguments 를 갖는다.


예)

<script>

function sumAll(){

alert( typeof(arguments) + ":" + arguments.length );

}


sumAll(1,2,3,4,5,6);

</script>





예) 합을 구하기.

<script type="text/javascript">

function sumAll(){

var sum = 0;

for( var i in arguments ){

sum+=arguments[i];

}

alert( "합:" + sum );

}


sumAll(1,2,3,4,5,6);

</script>





예) 매개변수 수에 따라 분기하여 로직 처리.

<script>

function funA(){

var len = arguments.length;


if( len == 0 ){


}else if ( len == 1 ) {


}...

}

</script>



5. 함수를 매개변수로 받는 함수


예) 익명의 함수를 매개변수로

<script type="text/javascript">

function callFunc(func){

for(var i=0;i<5;i++){

func();

}

}


callFunc(function(){

alert("call!");

});

</script>


alert창 5번 호출.


예) 선언적함수를 매개변수로

<script type="text/javascript">

function callFunc(func){

for(var i=0;i<5;i++){

func();

}

}

function procFunc(){

alert("call!!");

}

callFunc(procFunc);

</script>




6. 함수를 리턴하는 함수

예)

<script type="text/javascript">

function outerFunc(name){

var output = "Hello " + name + " !!";

return function(){

return output;

};

}

var first = outerFunc("JavaScript");

var second = outerFunc("JQuery");

alert( first() );

alert( second() );

</script>







+ Recent posts