JavaScript

[JavaScript] 함수, 배열

vhxpffltm 2019. 5. 8. 20:55

이 내용은 '생활코딩'에서 공부한 내용을 정리한 글이다. 

자세한 내용은 https://www.opentutorials.org/course/743 이곳에서 확인할 수 있다. 

모든 내용의 출처는 이곳이다. 다른 언어를 알고있는 상태로 공부한 내용이다.

 

Funtion : 함수(function)란 하나의 로직을 재실행 할 수 있도록 하는 것으로 코드의 재사용성을 높여준다.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
<!DOCTYPE html>
<html>
<head>
    <title></title>
</head>
<body>
    <script type="text/javascript">
        function f(num, num2){ // 자바스크립트 함수 모양 - ()안은 매개변수(파라미터)라고 생각하면 된다.
            return num + num2; // return은 값을 반환하는 것.
 
        }
        console.log(f(1000 - 123420-10));  //f(인자 - argument)라고 한다.
 
        name2 = function(){ // 함수의 정의부분이 name이라는 변수에 대입되는것.
                           // name이라는 변수가 함수를 갖는것
             return 12345;
        }
 
 
        function name(){
                var a= 1234,num = 0;
            for(var i=0;i<4;i++){
                num = num + a%10;
                a = a/10;
            }
            return num;    
        }
        console.log(name2());
        console.log(Math.floor(name()));
 
        //위와 같이 함수를 2가지 방법으로 만들 수 있다.
 
        (function (){
            var a= 1234,num = 0;
            for(var i=0;i<4;i++){
                num = num + a%10;
                a = a/10;
            }
        })();   //함수를 정의하는것과 호출을 같이한다. 익명함수라 부름 : 이름이 없고 바로 호출 
 
 
    </script>
</body>
</html>
 

 

C/C++ 과 다르게 우선 함수에 파라미터가 없다. argument의 이름만 명시하여 인자를 받는다. 인자의 개수를 구분하는것은 C/C++과 같이 ,로 구분한다. 

함수를 2가지 방법으로 만들 수 있다. 즉 'function 함수이름' 또는 '이름 = function()' 와 같이 만들 수 있다.

이름이 없고 바로 호출하는 함수를 익명함수라고 한다.

 

 

Array : 배열이란 연관된 데이터를 모아서 통으로 관리하기 위해서 사용하는 데이터 타입이다. C/C++ 과 비슷하다.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<!DOCTYPE html>
<html>
<head>
    <title>
        
    </title>
</head>
    <script type="text/javascript">
        function get_members(){
            return ['ddd''ssss''aejdn'];
        }
        var member = get_members();
        for(var i=0;i<member.length;i++){
            document.write(member[i].toUpperCase() + "<br />"); // 대문자로 변환
        }
 
        var arr = ['a''b''D''E'];
        var arr2 = ['djdn','dmjd'];
        arr.push('f'); // 배열 뒤에 추가
        arr.pop('D'); // 배열 원소 제거
        arr = arr.concat(arr2); // 배열을 합침
        arr.unshift('QQ');  // 맨앞에 추가
        document.write(arr + "<br />");
 
        arr.splice(3,0,'KKK');  // splice(3번째 원소,  0:앞에 , 1: 뒤에,    원소를 추가)
        document.write(arr + "<br />");
        document.write(arr.shift() + "<br />");
        var arr3 = [18,2,399,328,12,'a','A'];
 
        document.write(arr3 + "<br />");
        document.write((arr3.sort()));
    </script>
<body>
        
</body>
</html>
 
 

 

배열을 선언할때에도 var 을 명시하여 선언하다. 뒤의 Object를 할 때 나오겠지만, 선언방법은 []으로 데이터를 묶는다. C/C++과 다르게 자료형에 따라 초기화하는 방법이 다르지만 JavaScript에서는 위와같이 선언하고 초기화한다.

C++의 vector컨테이너처럼 push(),pop() 등의 기능이 있다. 각 기능들은 주석을 통해 확인할 수 있다. 필요한 기능들은 래퍼런스를 참조하자.

함수를 통해 배열을 return할 때에는 return [...]으로 배열을 반환할 수 있다. C++의 경우 함수가 반환타입이 있지만 JavaScript에서는 그렇지 않다.

'JavaScript' 카테고리의 다른 글

[JavaScript] 변수의 유효범위  (0) 2019.05.19
[JavaScript] 객체  (0) 2019.05.08
[JavaScript] 조건문, 반복문  (0) 2019.04.28
[JavaScript] 변수  (0) 2019.04.28
[Javascript] 숫자, 문자열  (0) 2019.04.28