자 바스 크 립 트 의 변 수 를 자세히 설명 합 니 다.

4034 단어 JavaScript변량
기본 형식 과 참조 형식의 값
ECMAScript 변 수 는 일반적으로 두 가지 데이터 형식의 값 이 있 습 니 다.기본 형식 과 참조 형식 입 니 다.
  • 기본 유형:간단 한 데이터 세그먼트:Undefined,Null,Boolean,Number,String
  • 인용 유형:여러 값 으로 구 성 된 대상;
  • 1.동적 속성
    둘 의 값 을 정의 합 니 다.변 수 를 만 들 고 변 수 를 할당 합 니 다.
    둘 의 값 을 실행 합 니 다:
  • 인용 유형:속성 과 방법 을 추가,삭제 할 수 있 습 니 다.
  • 기본 유형:속성 과 방법 을 추가,삭제 할 수 없습니다.
  • 예 를 들 어 인용 형식 a,속성 name age 를 추가 할 수 있 습 니 다.
    
    var a = new Object();
    a.name = "      ";
    a.age = 24;
    console.log(a.name);   //      
     기본 형식 name 속성 age 추가 불가
    
    var name = "      ";
    name.age = 24;
    console.log(name.age);   //undefined
    코드 에서 알 수 있 듯 이 인용 형식 값 에 만 나중에 사용 할 수 있 도록 속성 을 동적 으로 추가 할 수 있 습 니 다.
    2.할당 변수 값
    한 변수 에서 다른 변수 로 기본 형식 값 과 참조 형식 값 을 복사 할 때:
    기본 형식:변수 대상 에 새 값 을 만 들 고 그 값 을 새 변수 가 분 배 된 위치 에 복사 합 니 다.(완전 독립 된 두 변수)
    예컨대
    
    var a = 111;
     var b = a;
     console.log(b);   //111
    코드 에서 알 수 있 듯 이 변수 b 의 값 은 변수 a 의 값 의 사본 일 뿐 이들 의 값 111 은 완전히 독립 된 것 입 니 다.
    참조 형식:변수 대상 에 저 장 된 값 을 새 변수 로 분 배 된 공간 에 복사 합 니 다.(같은 대상 의 두 변 수 를 참조 합 니 다)
    인용 형식의 값 의 사본 은 실제 포인터 로 더미 에 저 장 된 대상 을 가리킨다.
    
    var obj1 = new Object;
    var obj2 = obj1;
    obj1.name = "      ";
    console.log(obj2,name);   // Object { name="      "}       
    코드 에서 알 수 있 듯 이 obj 1 과 obj 2 는 같은 대상 Object 를 가리 키 고 있 습 니 다.따라서 obj 1 에 추 가 된 name 속성 은 obj 2 를 통 해 도 접근 할 수 있 습 니 다.
    3.전달 매개 변수
    변수 에 저 장 된 실제 값 에 접근 할 수 있 기 때문에 기본 형식 은 값 에 따라 접근 한 다 는 것 을 잘 알 고 있 습 니 다.
    모든 함수 의 매개 변 수 는 값 에 따라 전달 된다.
    기본 유형:기본 유형 값 의 전달 은 기본 유형 변수의 복사 와 같다.
    매개 변수 에 값 을 전달 할 때 전 달 된 값 은 부분 변수(이름 매개 변수)에 복사 되 기 때문에 이 부분 변수의 변 화 는 함수 의 외부 에 반영 되 지 않 습 니 다.
    예 를 들 면:
    
    function fn(num) {
     num += 10;
     return num;
    }
    var a = 10;
    var result = fn(a);
    console.log(result); //20
    console.log(a);  //10
    코드 에서 알 수 있 듯 이 인자 num 과 변수 a 는 서로 알 지 못 합 니 다.단지 같은 값 을 가지 고 있 을 뿐 입 니 다.다 쓴 후에 도 당신 은 당신 이 고 나 는 나 입 니 다.서로 정 치 를 하지 않 습 니 다.
    인용 형식:인용 형식의 전달 은 인용 형식 변수의 복사 와 같 습 니 다.
    매개 변수 에 값 을 전달 할 때 이 값 이 메모리 에 있 는 주 소 를 부분 변수 에 복사 하기 때문에 이 부분 변수의 변 화 는 함수 의 외부 에 반 영 됩 니 다.
    예 를 들 면:
    
    function fn(obj) {
     obj.name = '      ';
    }
    var person = new Object();
    fn(person);
    console.log(person.name);  //      
    코드 에서 알 수 있 듯 이 이 함수 내부 에서 매개 변수 obj 와 변수 person 은 같은 대상 Object 를 인용 합 니 다.그래서 당신 이 움 직 이지 않 으 면 나 도 움 직 이지 않 습 니 다.당신 이 움 직 이면 나 도 움 직 입 니 다.당신 중 에 내 가 있 습 니 다.나 중 에 당신 이 있 고 정의 가 있 습 니 다.오 랜 시간 동안 쉬 지 않 습 니 다.
    즉,변수 person 이 값 에 따라 전달 되 더 라 도 매개 변수 obj(국부 변수 로 상상)는 인용 에 따라 같은 대상 에 접근 합 니 다.
    접근 변 수 는 값 과 인용 두 가지 방식 이 있 고 매개 변 수 는 값 에 따라 만 전달 할 수 있 습 니 다.
    4.검 측 유형
    기본 유형:typeof
    참조 형식:instanceof(대상 또는 null)
    예 를 들 면:
    
    var a = 'Wo Wei Qian Duan Dai Yan';
    var b = 24;
    var c = '';
    var d = true;
    var e;
    var g = undefined;
    var f = null; //     
    var h = new Object();
     
    console.log(typeof a); //string
    console.log(typeof b); //number 
    console.log(typeof c); //string
    console.log(typeof d); //boolean
    console.log(typeof e); //undefined
    console.log(typeof g); //undefined
    console.log(typeof f); //object
    console.log(typeof h); //object
    
    인용 형식의 값 은 모두 Object 의 인 스 턴 스 입 니 다.
    다음 과 같다.
    
    var person = new Object();
    var num = [1,2, 3];
    var pattern = /.at/i;
    console.log(person instanceof Object); //true
    console.log(num instanceof Object); //true
    console.log(num instanceof Array);  //true
    console.log(pattern instanceof Object); //true
    console.log(pattern instanceof RegExp); //true
    
    위 에서 말 한 것 은 소 편 이 여러분 에 게 소개 한 자 바스 크 립 트 변 수 를 상세 하 게 해석 하고 통합 시 키 는 것 입 니 다.여러분 에 게 도움 이 되 기 를 바 랍 니 다.궁금 한 점 이 있 으 면 메 시 지 를 남 겨 주세요.소 편 은 제때에 답 해 드 리 겠 습 니 다.여기 서도 저희 사이트 에 대한 여러분 의 지지 에 감 사 드 립 니 다!

    좋은 웹페이지 즐겨찾기