Rumah  >  Artikel  >  hujung hadapan web  >  Bolehkah es6 menggunakan var untuk mengisytiharkan pembolehubah?

Bolehkah es6 menggunakan var untuk mengisytiharkan pembolehubah?

青灯夜游
青灯夜游asal
2022-04-11 16:07:151810semak imbas

ES6 boleh menggunakan var untuk mengisytiharkan pembolehubah. Var ialah kata kunci untuk mengisytiharkan pembolehubah yang diisytiharkan menggunakan kata kunci var mempunyai dua skop: skop global dan skop fungsi Memandangkan var menyokong promosi pembolehubah, pembolehubah global yang diisytiharkan dengan var disertakan dalam keseluruhan kod skrip, pembolehubah tempatan diisytiharkan menggunakan var adalah sah sepanjang fungsi.

Bolehkah es6 menggunakan var untuk mengisytiharkan pembolehubah?

Persekitaran pengendalian tutorial ini: sistem Windows 7, ECMAScript versi 6, komputer Dell G3.

ES5 hanya mempunyai dua cara untuk mengisytiharkan pembolehubah: arahan var dan arahan fungsi.

Selain menambah arahan let dan const, ES6 juga mempunyai dua kaedah untuk mengisytiharkan pembolehubah: perintah import dan arahan kelas.

Jadi, terdapat 6 cara untuk mengisytiharkan pembolehubah dalam ES6:

  • Istiharkan pembolehubah dengan kata kunci var

  • Gunakan kata kunci Mengisytiharkan pembolehubah dengan fungsi perkataan

  • Mengisytiharkan pembolehubah dengan kata kunci const

  • Mengisytiharkan pembolehubah dengan kata kunci let

  • Isytihar pembolehubah dengan kelas kata kunci

  • Isytiharkan pembolehubah dengan import kata kunci

Isytiharkan pembolehubah dengan kata kunci var

var ialah kata kunci untuk mengisytiharkan kaedah Pengisytiharan:

var 变量名;

Beberapa contoh:

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

Apabila mentakrifkan pembolehubah, anda boleh mentakrifkan satu atau Berbilang pembolehubah. . Jika anda mentakrifkan berbilang pembolehubah, anda perlu menggunakan koma untuk memisahkan nama pembolehubah, seperti yang ditunjukkan dalam contoh berikut:

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

Selepas pembolehubah ditakrifkan, jika tiada nilai diberikan kepada pembolehubah , maka pembolehubah ini akan diberikan nilai awal - tidak ditentukan.

Selepas pembolehubah ditakrifkan, anda boleh menggunakan tanda sama = untuk menetapkan nilai kepada pembolehubah Bahagian kiri tanda sama ialah nama pembolehubah, dan sebelah kanan tanda sama ialah nilai yang akan diberikan kepada pembolehubah, seperti yang ditunjukkan dalam contoh berikut:

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

Selain itu, anda juga boleh menetapkan nilai kepada pembolehubah semasa mentakrifkannya, seperti yang ditunjukkan dalam contoh berikut:

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;

Penjelasan:

  • var ditakrifkan Pembolehubah boleh diubah suai Jika tidak dimulakan, undefined akan dikeluarkan dan tiada ralat akan dilaporkan

  • var Pembolehubah yang diisytiharkan oleh var adalah pada tetingkap Gunakan let atau const untuk mengisytiharkan pembolehubah ini tidak akan diletakkan di atas

  • Banyak bahasa mempunyai skop peringkat blok, tetapi JS tidak menggunakan var untuk mengisytiharkan pembolehubah dan fungsi untuk membahagikan skop "{}" tidak boleh mengehadkan skop, jadi pembolehubah yang diisytiharkan dengan var promosi pembolehubah

  • Skop pembolehubah yang diisytiharkan dengan var adalah global atau peringkat fungsi

Pengetahuan lanjutan:

kata kunci biarkan dan const mengisytiharkan pembolehubah

Sebelum 2015, JavaScript hanya boleh menggunakan kata kunci var untuk mengisytiharkan pembolehubah Selepas keluaran ECMAScript6 (ES6), dua kata kunci baharu, let dan const, telah ditambahkan untuk mengisytiharkan pembolehubah Antaranya:

  • Pembolehubah yang diisytiharkan menggunakan kata kunci let hanya dalam Ia sah dalam blok kod di mana ia berada (. serupa dengan pembolehubah tempatan), dan dalam blok kod ini, pembolehubah dengan nama yang sama tidak boleh diisytiharkan berulang kali; juga mempunyai ciri lain, iaitu pembolehubah yang ditakrifkan menggunakan kata kunci const tidak boleh diubah suai setelah ditakrifkan (iaitu pembolehubah yang ditakrifkan menggunakan kata kunci const ialah pemalar).

  • Nota: IE10 dan ke bawah tidak menyokong kata kunci let dan const.

  • Kod sampel adalah seperti berikut:

Skop var, let dan const

let name = "小明";      // 声明一个变量 name 并赋值为“小明”
let age  = 11;          // 声明一个变量 age
let age  = 13;          // 报错:变量 age 不能重复定义
const PI = 3.1415       // 声明一个常量 PI,并赋值为 3.1415
console.log(PI)         // 在控制台打印 PI

Skop pembolehubah yang diisytiharkan menggunakan var mempunyai kesan global Skop domain dan fungsi yang diisytiharkan menggunakan let dan const mempunyai skop global, skop tempatan dan skop peringkat blok. Memandangkan var menyokong promosi pembolehubah, skop global pembolehubah var adalah sah untuk kod skrip keseluruhan halaman manakala let dan const tidak menyokong promosi pembolehubah, jadi skop global pembolehubah let dan const merujuk kepada kod skrip daripada Seluruh kawasan antara permulaan pernyataan pengisytiharan dan penghujung kod skrip keseluruhan halaman, dan kawasan sebelum pernyataan pengisytiharan adalah tidak sah.

Begitu juga, kerana var menyokong promosi pembolehubah, tetapi let dan const tidak menyokong promosi pembolehubah, pembolehubah tempatan yang diisytiharkan menggunakan var adalah sah di seluruh fungsi, manakala pembolehubah tempatan yang diisytiharkan menggunakan let dan const adalah sah dari permulaan pernyataan pengisytiharan kepada Kawasan antara hujung fungsi adalah sah. Perlu diingatkan bahawa jika pembolehubah tempatan dan pembolehubah global mempunyai nama yang sama, maka dalam skop fungsi, pembolehubah tempatan akan menimpa pembolehubah global, iaitu, pembolehubah tempatan akan berfungsi dalam badan fungsi; , pembolehubah global akan berfungsi dan pembolehubah tempatan akan berfungsi Pembolehubah tidak sah dan ralat sintaks akan berlaku apabila merujuk pembolehubah tempatan.

Isytihar pembolehubah dengan fungsi kata kunci

mengisytiharkan pembolehubah baharu bernama tambah dan memberikan fungsi kepadanya Kandungan antara definisi
function add(a) {
  var sum = a + 1;
  return sum;
}
  • {} ditugaskan untuk menambah

  • Kod di dalam fungsi tidak akan dilaksanakan, tetapi akan disimpan dalam pembolehubah Untuk kegunaan masa hadapan

  • Gunakan kelas kata kunci untuk mengisytiharkan pembolehubah

Berkenaan kelas, saya akan menulis artikel berasingan kemudian untuk memperkenalkannya secara terperinci, mari kita bercakap secara ringkas tentang di sini: Pertama, lihat pembina dalam ES5, dan kemudian gunakan kelas ES6 untuk melaksanakannya:

Kemudian mari kita lihat kaedah penulisan kelas 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前端

Atas ialah kandungan terperinci Bolehkah es6 menggunakan var untuk mengisytiharkan pembolehubah?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn