자 바스 크 립 트 고급 프로 그래 밍 (제3 판) 제4 장 변수, 역할 영역 과 메모리 문제

6718 단어 JavaScript
JavaScript 변 수 는 두 가지 유형의 값 을 저장 할 수 있 습 니 다. 기본 형식 값 과 참조 형식 값 입 니 다.기본 유형 값 과 인용 유형 값 은 다음 과 같은 특징 을 가지 고 있 습 니 다.
  • 기본 형식 값 은 메모리 에 고정 크기 의 공간 을 차지 하기 때문에 스 택 메모리 에 저 장 됩 니 다.
  • 한 변수 에서 다른 변수 로 기본 형식 값 을 복사 하면 이 값 의 사본 을 만 듭 니 다.
  • 인용 형식의 값 은 대상 이 고 메모리 에 저 장 됩 니 다.
  • 인용 유형 을 포함 하 는 변 수 는 실제 적 으로 대상 자체 가 아니 라 대상 을 가리 키 는 지침 입 니 다.
  • 한 변수 에서 다른 변수 로 인용 형식의 값 을 복사 하고 복사 한 것 은 포인터 이기 때문에 두 변 수 는 최종 적 으로 같은 대상 을 가리킨다.
  • 하나의 값 이 어떤 기본 형식 인지 type: of 연산 자 를 사용 할 수 있 는 지 확인 하고, 하나의 값 이 어떤 인용 형식 인지 인 스 턴 스 of 연산 자 를 사용 할 수 있 는 지 확인 합 니 다.

  • 4.1.3 전달 매개 변수
     1     <script type="text/javascript">
    
     2         function addTen(num) {
    
     3             num += 10;
    
     4             return num;
    
     5         }
    
     6         
    
     7         var count = 20
    
     8         var result = addTen(count);
    
     9         alert(count);    //20
    
    10         alert(result);   //10
    
    11 
    
    12     </script>
    1     <script type="text/javascript">
    
    2         function setName(obj) {
    
    3             obj.name = "Nicholas";
    
    4         }       
    
    5         var person = new Object();
    
    6         setName(person);
    
    7         alert(person.name);    //"Nicholas"
    
    8     </script>

     4.2.2 블록 급 역할 영역 이 없습니다.
        <script type="text/javascript">      
    
            function add(num1, num2) {
    
                var sum = num1 + num2;
    
                return sum;
    
            }     
    
            var result = add(10, 20);  //30
    
            alert(sum);     //   sum       ,        
    
        </script>
    1     <script type="text/javascript">     
    
    2         function add(num1, num2) {
    
    3             sum = num1 + num2;
    
    4             return sum;
    
    5         }       
    
    6         var result = add(10, 20);  //30
    
    7         alert(sum);                //30     
    
    8     </script>
    1     <script type="text/javascript">
    
    2         var color = "blue";
    
    3         
    
    4         function getColor(){
    
    5             return color;
    
    6         }
    
    7         
    
    8         alert(getColor());  //"blue"   
    
    9     </script>
     1     <script type="text/javascript">
    
     2         var color = "blue";
    
     3         
    
     4         function getColor(){
    
     5             var color = "red";
    
     6             return color;
    
     7         }
    
     8         
    
     9         alert(getColor());  //"red" 
    
    10     </script>

    좋은 웹페이지 즐겨찾기