>  기사  >  웹 프론트엔드  >  var는 es6의 새로운 기능인가요?

var는 es6의 새로운 기능인가요?

WBOY
WBOY원래의
2022-08-18 16:46:49960검색

Var는 es6의 새로운 기능이 아닙니다. var 키워드를 사용하여 변수를 선언할 수 있습니다. 선언된 변수는 초기화 중에 값을 할당할 수도 있고 할당하지 않을 수도 있습니다. . 초기화 및 할당 중에 모든 유형이 가능합니다. 값이 할당되지 않은 경우 이것이 기본값입니다.

var는 es6의 새로운 기능인가요?

이 튜토리얼의 운영 환경: Windows 10 시스템, ECMAScript 버전 6.0, Dell G3 컴퓨터.

var는 es6의 새로운 기능이 아닙니다.

변수를 선언하려면 var 키워드를 사용하세요. 값을 할당하지 않으면 초기화 할당이 가능합니다. var 선언은 일반적이며 전역 범위이며 창의 속성으로 추가됩니다(함수 범위인 함수에 선언된 항목은 제외).

var

  • var로 선언된 변수는 전역 변수이자 최상위 변수입니다. (브라우저 환경의 최상위 개체는 창 개체를 나타내고 노드에서는 전역 개체를 나타냅니다.)

  • var life를 이용한 변수 변수승격의 경우가 있습니다

  • var를 사용하면 변수를 여러번 선언할 수 있으며, 나중에 선언한 변수가 이전 변수 선언을 덮어쓰게 됩니다

  • 함수에서 var를 사용하여 변수를 선언하는 경우 , 변수는 로컬입니다. 함수 내에서 var가 사용되지 않으면 전역적으로 변경됩니다. 변수 선언의 사용법은 var와 유사하지만 선언된 변수는 let 명령이 있는 코드 블록 내에서만 유효하며 let 명령이 블록 수준 범위에 존재하는 한 변수 승격이 없습니다. 영역은 더 이상 외부 영향의 영향을 받지 않습니다

let을 사용하여 변수를 선언하기 전에는 변수를 사용할 수 없습니다. 이를 임시 데드존이라고 합니다(let은 동일한 범위에서 반복 선언을 허용하지 않으므로 다시 사용할 수 없습니다). -함수 내부에 매개 변수 선언)

var은 변수를 선언합니다
  • <script>
    /*
    *1.使用var 声明变量,可以保存任意数据类型的值,
    * Undefined、Null、Number、String、Symbol、Boolean、Object 7种类型
    *2.在同一代码块位置:
    * var userName; userName="marshal" 
    * var userName="marshal"  是完全等价有效的
    * var 可以以逗号分隔,定义多个变量,分号结束
    * var userName,userAge,userAddress;
    */
    var userName="marshal";//var userName;userName="marshal";
    console.log(userName);
    </script>

    개발자 도구를 사용하여 다음 그림을 확인하세요.

  • var 범위 설명
  • 범위: 런타임 시, 변수, 개체, 함수 코드 영역 가시성에서 액세스되는 기타 리소스. 자바스크립트는 글로벌(Global)과 로컬(Local) 두 가지 유형으로 나뉜다. Script 태그와 동일한 수준에서 브라우저에서는 이를 windows 객체라고 부르므로 var를 사용하여 정의된 전역 변수 및 함수는 모두 window 객체의 속성 및 메서드입니다. Local은 함수 내부와 같이 {} 중괄호 안에 정의되며, 일반적으로 함수 외부에서 액세스할 수 없지만 클로저를 통해 해결할 수 있습니다(나중에 자세히 설명).
  • <script>
    /* 
    * 1.定义函数localVariable
    * 2.在函数内部使用var 声明变量userName,并设置值为marshal
    * 
    */
    function localVariable(){
    var userName="marshal";
    console.log("函数内部访问"+userName);//输出函数内部访问marshal
    }
    localVariable();
    console.log("函数外部访问"+userName);  //报错:UncaughtReferenceError: userName is not defined
    </script>
localVariable() 함수가 호출된 후 내부 함수 내부에서 var를 사용하여 선언한 변수 및 객체가 소멸되므로 UncaughtReferenceError: userName이 정의되지 않았습니다.

함수 내부에서 var가 생략되면 오류가 발생합니다. 전역 변수, 샘플 코드 다음과 같습니다:

<script>
/* 
* 1.定义函数localVariable
* 2.在函数内部省去var关键字
* 3.注不建议省去var 关键字,局部的全局变量很难维护,容易埋坑
*/
function localVariable(){
userName="marshal";
console.log("函数内部访问"+userName);
}
localVariable();//函数调用后,userName变为全局变量,可使用window对象访问。
console.log("函数外部访问"+window.userName);
</script>

[관련 권장 사항: var는 es6의 새로운 기능인가요?javascript 비디오 튜토리얼

,

web front-end]

위 내용은 var는 es6의 새로운 기능인가요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.