>  기사  >  웹 프론트엔드  >  es6에서는 var를 사용하여 변수를 선언할 수 있나요?

es6에서는 var를 사용하여 변수를 선언할 수 있나요?

青灯夜游
青灯夜游원래의
2022-04-11 16:07:151815검색

es6에서는 var를 사용하여 변수를 선언할 수 있습니다. Var는 변수를 선언하는 키워드입니다. var 키워드를 사용하여 선언한 변수에는 전역 범위와 함수 범위의 두 가지 범위가 있습니다. var는 변수 승격을 지원하므로 var로 선언된 전역 변수는 var를 사용하여 선언된 유효한 로컬 변수입니다. 함수 전반에 걸쳐 유효합니다.

es6에서는 var를 사용하여 변수를 선언할 수 있나요?

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

ES5에는 변수를 선언하는 방법이 var 명령과 function 명령의 두 가지뿐입니다.

ES6 let 및 const 명령을 추가하는 것 외에도 import 명령과 class 명령이라는 두 가지 변수 선언 방법이 있습니다.

그러므로 ES6에서 변수를 선언하는 방법에는 6가지가 있습니다.

  • var 키워드로 변수 선언

  • function 키워드로 변수 선언

  • const 키워드로 변수 선언

  • 키 사용 키워드 사용 let 변수 선언

  • class 키워드를 사용하여 변수 선언

  • import 키워드를 사용하여 변수 선언

var 키워드를 사용하여 변수 선언

var은 변수 선언을 위한 키워드이고, 선언 방법은 다음과 같습니다.

var 变量名;

몇 가지 예:

var str;  //用来存储字符串
var age;  //用来存储年龄
var prePage;  //用来存储上一页

변수를 정의할 때 한 번에 하나 이상의 변수를 정의할 수 있습니다. 여러 변수를 정의하는 경우 그림과 같이 쉼표를 사용하여 변수 이름을 구분해야 합니다. 다음 예에서는

var a, b, c;    // 同时声明多个变量

변수가 정의된 후 변수에 할당된 값이 없으면 이러한 변수에는 초기 값인 정의되지 않음(정의되지 않음)이 할당됩니다.

변수가 정의된 후 등호 =를 사용하여 변수에 값을 할당할 수 있습니다. 등호의 왼쪽은 변수의 이름이고, 등호의 오른쪽은 변수에 할당할 값입니다. 다음 예와 같이 변수에 할당됩니다.

var num;    // 定义一个变量 num
num = 1;    // 将变量 num 赋值为 1

또한 다음 예와 같이 변수를 정의하는 동시에 변수에 값을 할당할 수도 있습니다.

var num = 1;                // 定义一个变量 num 并将其赋值为 1
var a = 2, b = 3, c = 4;    // 同时定义 a、b、c 三个变量并分别赋值为 2、3、4
// var a = 2,               // 为了让代码看起来更工整,上一行代码也可以写成这样
//     b = 3,
//     c = 4;

설명:

  • var로 정의된 변수는 수정 가능합니다. 초기화하지 않으면 undefine이 출력되고 오류가 보고되지 않습니다.

  • var 창에 선언된 변수는 let 또는 const를 사용하여 변수를 선언하지 않습니다. 많은 언어에는 블록 수준 범위가 있지만 JS는 var를 사용하여 범위와 중괄호를 나누는 함수를 선언하므로 변수가 선언됩니다. var를 사용하면 변수 승격 효과가 있습니다

  • var로 선언된 변수의 범위는 전역 또는 함수 수준입니다

  • 확장 지식:

let 및 const 키워드로 변수를 선언

2015년 이전에는 JavaScript는 var 키워드를 통해서만 변수를 선언할 수 있습니다. ECMAScript6(ES6) 출시 이후에는 두 개의 새로운 키워드인 let 및 const가 추가되어 변수를 선언했습니다.

let 키워드를 사용하여 선언된 변수는 다음에서만 유효합니다. 해당 코드 블록이 위치한 코드 블록(로컬 변수와 유사), 이 코드 블록에서는 같은 이름의 변수를 반복적으로 선언할 수 없습니다.

  • const 키 단어의 기능은 let과 동일하지만 변수가 선언됩니다. const 키워드를 사용하면 또 다른 기능도 있습니다. 즉, const 키워드로 정의된 변수는 일단 정의되면 수정할 수 없습니다(즉, const 키워드를 사용하여 정의된 변수는 상수입니다).

  • 참고: IE10 이하 버전에서는 let 및 const 키워드를 지원하지 않습니다.

  • 샘플 코드는 다음과 같습니다.
let name = "小明";      // 声明一个变量 name 并赋值为“小明”
let age  = 11;          // 声明一个变量 age
let age  = 13;          // 报错:变量 age 不能重复定义
const PI = 3.1415       // 声明一个常量 PI,并赋值为 3.1415
console.log(PI)         // 在控制台打印 PI

var, let 및 const의 범위

var를 사용하여 선언된 변수의 범위에는 let 및 const를 사용하여 선언된 변수에는 전역 범위, 로컬 범위 및 함수 범위가 포함됩니다. 블록 범위. var는 변수 승격을 지원하므로 var 변수의 전역 범위는 전체 페이지의 스크립트 코드에 유효하지만 let 및 const는 변수 승격을 지원하지 않으므로 let 및 const 변수의 전역 범위는 전체 페이지의 스크립트 코드 끝 부분과 선언문 이전 영역 사이의 전체 영역은 유효하지 않습니다.

마찬가지로 var는 변수 승격을 지원하지만 let과 const는 변수 승격을 지원하지 않기 때문에 var를 사용하여 선언한 지역 변수는 함수 전체에서 유효하지만, let과 const를 사용하여 선언한 지역 변수는 선언문 시작 부분부터 끝까지 유효합니다. 기능 영역의 끝이 유효합니다. 지역 변수와 전역 변수의 이름이 같은 경우 함수 범위에서 지역 변수가 전역 변수를 덮어씁니다. 즉, 지역 변수는 함수 본문 외부의 함수 본문에서 작동합니다. , 전역 변수는 작동하고 지역 변수는 작동합니다. 변수가 유효하지 않으며 지역 변수를 참조할 때 구문 오류가 발생합니다.

키워드 function을 사용하여 변수를 선언합니다.

function add(a) {
  var sum = a + 1;
  return sum;
}

add라는 새 변수를 선언하고 함수 정의에 할당합니다.

  • {} 사이의 콘텐츠가 add에 할당됩니다

  • 함수 내부의 코드는 실행되지 않고 나중에 사용하기 위해 변수에 저장될 뿐입니다

  • class 키워드를 사용하여 변수를 선언하세요

클래스에 대해서는 나중에 별도의 글을 써서 자세히 소개하도록 하겠습니다. 여기 있습니다: 먼저 ES5의 생성자를 살펴본 다음 ES6 클래스를 사용하여 구현합니다.

// ES5写法 :
  function fun ( x, y ){
    this.x = x;
    this.y = y;
  };
  fun.prototype.GetHair = function(){
    return `${this.x}掉了两根头发,${this.y}说俺也一样!`;
  };
  let setHair = new fun('小明','老王');
  console.log(setHair.GetHair()); // 小明掉了两根头发,老王说俺也一样!
ES6 클래스 작성 방법을 살펴보겠습니다.

 class Interest {
    constructor( x, y, e, z ){
      this.x = x;
      this.y = y;
      this.e = e;
      this.z = z;
    }
    MyInterest(){
      let arr = [];
      console.log(`我会${[...arr,this.x,this.y,this.e,this.z]}!`);
    }
  }
  let GetInterest = new Interest('唱','跳','rap','篮球');
  console.log(GetInterest.MyInterest());  //我会唱,跳,rap,篮球!

ES6 的class可以看作只是一个语法糖,它的绝大部分功能,ES5 都可以做到,新的class写法只是让对象原型的写法更加清晰、更像面向对象编程的语法而已,constructor方法就是构造方法,而this关键字则代表实例对象。也就是ES5 的构造函数Point,对应 ES6 的Point类的构造方法。

用关键字import声明变量

import用于加载文件,在大括号接收的是一个或多个变量名,这些变量名需要与你想要导入的变量名相同。

举个栗子:你想要导入action.js文件中的某一个变量,这个变量里保存了一段代码块,所以你要写成:import { Button } from 'action',这个时候,你就从action.js中获取到了一个叫 Button 的变量,既然获取到了,你就可以对Button里的代码猥琐欲为了

如果想为输入的变量重新取一个名字,import命令要使用as关键字,将输入的变量重命名,比如:

import { NewButton as Button } from 'action.js';

上面的代码表示从action.js文件中,获取一个变量名称叫做Button的代码段,然后你又声明了一个变量 NewButton ,将 Button 保存在 NewButton

【相关推荐:javascript视频教程web前端

위 내용은 es6에서는 var를 사용하여 변수를 선언할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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