ホームページ ウェブフロントエンド フロントエンドQ&A es6 で変数を宣言するにはいくつかの方法があります

es6 で変数を宣言するにはいくつかの方法があります

Mar 07, 2022 pm 05:21 PM
es6 変数を宣言する

es6 変数を宣言するには 6 つの方法があります: 1. キーワード var を使用して変数を宣言する; 2. キーワード function を使用して変数を宣言する; 3. キーワード const を使用して変数を宣言する; 4. キーワードを使用するlet で変数を宣言します; 5. キーワード class を使用して変数を宣言します; 6. キーワード import を使用して変数を宣言します。

es6 で変数を宣言するにはいくつかの方法があります

このチュートリアルの動作環境: Windows 7 システム、ECMAScript バージョン 6、Dell G3 コンピューター。

ES5 では、変数を宣言する方法が var コマンドと function コマンドの 2 つだけです。

ES6 let および const コマンドの追加に加えて、変数を宣言するには、import コマンドと class コマンドの 2 つの方法があります。

つまり、ES6 には変数を宣言する方法が合計 6 つあります。

1. キーワード var を使用して変数を宣言します。

var a ;  //undefined
var b = 1;
ログイン後にコピー
  • var で定義された変数は変更できます。初期化されていない場合は、 # # 出力されます。 #unknown, エラーは報告されません
  • var で宣言された変数はウィンドウ上にあります。変数を宣言するには let または const を使用してください。この変数はウィンドウ上には配置されません.
  • 多くの言語にはブロック レベルのスコープがありますが、JS にはありません。変数を宣言するために var を使用し、スコープを分割するために関数を使用します。中括弧 "{}" は var のスコープを制限できません。したがって、var で宣言された変数には
  • 変数プロモーションEffect
  • var で宣言された変数のスコープはグローバルまたは関数レベルです

2. キーワード function を使用して変数を宣言します

function add(a) {
  var sum = a + 1;
  return sum;
}
ログイン後にコピー
    add という名前の新しい変数を宣言し、それに関数定義を割り当てます。
  • {} の間の内容add に割り当てられます
  • 関数内のコードは実行されませんが、将来の使用のために変数に保存されるだけです

3. 変数を宣言しますキーワード const を使用

const a;     //报错,必须初始化
const b = 1;
ログイン後にコピー
    #const で定義された変数は変更できないため、初期化する必要があります
  • 変数はグローバル変数、またはグローバル変数内のグローバル変数です。 module
  • 変数の場合、宣言時に一度だけ割り当てられ、コードの他の行で再割り当てされることはありません。その場合は const を使用する必要がありますが、変数の初期値は将来調整される可能性があります (定数変数)
  • 読み取り専用の定数を作成します。この定数は、別のブラウザでは変更できないように見えます。宣言後に変更しないことをお勧めします。スコープはブロック レベルです。
  • const
  • constant値を表しますindex、つまり、メモリ内の変数名の ポインタは変更できません しかし、この変数を指す 値は変更される可能性があります
  • const で定義された変数は変更できません。通常、モジュールが必要な場合に使用または定義されます。
  • グローバル定数
  • 定数はグローバルで宣言できます。スコープまたは関数内にありますが、

    必ず初期化する必要があります定数

  • 定数は、そのスコープ内の他の変数または関数と同じ名前を持つことはできません

4. キーワード let を使用します。変数の宣言#

let a;  //undefined
let b = 1; 
function add(b) {
  let sum = b + 1;
  return sum;
}
let c = add(b);
ログイン後にコピー
    には "javascript strict モード":
  • 'use strict'; が必要です。 #変数のプロモーションはありません
  • 重複した宣言は許可されません
  • let によって宣言された変数のスコープはブロックレベルのドメイン内にあります。let が定義された後は、関数の内部では、関数の外部には影響しません (
  • ブロックレベルのスコープ
  • )宣言時に変数に値を割り当てることができます。デフォルト値は未定義です。スクリプトの後半で変数に値を割り当てることもできます。存続前には使用できません (一時的なデッド ゾーン)

5. キーワード 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 クラスは単なる構文シュガーとみなすことができます, その機能のほとんどは ES5 で実現できます。新しいクラスの記述方法は、オブジェクト プロトタイプの記述方法をより明確にし、オブジェクト指向プログラミングの構文に近づけるだけです。コンストラクター メソッドは構築メソッドであり、this キーワードはインスタンスを表します物体。 。つまり、ES5 のコンストラクタ Point は、ES6 の Point クラスのコンストラクタ メソッドに対応します。

6. キーワード import を使用して変数を宣言します

import

はファイルをロードするために使用されます。中括弧は 1 つ以上の変数名です。これらの変数名は、インポートする変数名と同じである必要があります。

举个栗子:你想要导入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 で変数を宣言するにはいくつかの方法がありますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

ES6 で配列を反転する方法 ES6 で配列を反転する方法 Oct 26, 2022 pm 06:19 PM

ES6 では、配列オブジェクトの reverse() メソッドを使用して、配列の反転を実現できます。このメソッドは、配列内の要素の順序を逆にして、最後の要素を最初に、最初の要素を最後に配置するために使用されます。構文「array」 。逆行する()"。 reverse() メソッドは元の配列を変更します。変更したくない場合は、拡張演算子 "..." とともに使用する必要があり、構文は "[...array].reverse() 」。

非同期は es6 または es7 用ですか? 非同期は es6 または es7 用ですか? Jan 29, 2023 pm 05:36 PM

非同期はes7です。 async と await は ES7 に新しく追加されたもので、非同期操作のソリューションです。async/await は co モジュールとジェネレーター関数の糖衣構文と言え、より明確なセマンティクスで JS 非同期コードを解決します。名前が示すように、async は「非同期」を意味します。async は関数が非同期であることを宣言するために使用されます。async と await の間には厳密な規則があります。両方を互いに分離することはできず、await は async 関数内でのみ記述できます。

es6 の 2 つの配列で異なる項目を見つける方法 es6 の 2 つの配列で異なる項目を見つける方法 Nov 01, 2022 pm 06:07 PM

手順: 1. 構文 "newA=new Set(a); newB=new Set(b);" を使用して、2 つの配列をそれぞれセット型に変換します; 2. has() と filter() を使用して差分セットを検索します、構文 " new Set([...newA].filter(x =>!newB.has(x)))" では、差分セット要素がセット コレクションに含まれて返されます。 3. 配列を使用します。 from セットを配列に変換するタイプ、構文は「Array.from(collection)」です。

ミニ プログラムで es6 を es5 に変換する必要があるのはなぜですか? ミニ プログラムで es6 を es5 に変換する必要があるのはなぜですか? Nov 21, 2022 pm 06:15 PM

ブラウザの互換性のため。 ES6 は JS の新しい仕様として、多くの新しい構文と API を追加していますが、最新のブラウザーは ES6 の新機能を高度にサポートしていないため、ES6 コードを ES5 コードに変換する必要があります。 WeChat Web 開発者ツールでは、デフォルトで babel が使用され、開発者の ES6 構文コードを 3 つの端末すべてで適切にサポートされる ES5 コードに変換し、開発者がさまざまな環境によって引き起こされる開発上の問題を解決できるようにします。プロジェクト内でのみ設定して確認するだけです。 「ES6~ES5」オプション。

es6 構文が必要ですか? es6 構文が必要ですか? Oct 21, 2022 pm 04:09 PM

いいえ、require は CommonJS 仕様のモジュール構文であり、es6 仕様のモジュール構文は import です。 require は実行時にロードされ、import はコンパイル時にロードされます。require はコード内のどこにでも記述できます。import はファイルの先頭にのみ記述でき、条件文や関数スコープでは使用できません。モジュール属性は導入されるだけです。 require を実行した場合、そのためパフォーマンスは比較的低くなりますが、インポート コンパイル中に導入されたモジュールのプロパティのパフォーマンスはわずかに高くなります。

es6 の一時的なデッドゾーンとは何を意味しますか? es6 の一時的なデッドゾーンとは何を意味しますか? Jan 03, 2023 pm 03:56 PM

es6 では、一時的なデッド ゾーンは構文エラーであり、ブロックを閉じたスコープにする let および const コマンドを指します。コード ブロック内では、let/const コマンドを使用して変数が宣言される前に、変数は使用できず、変数が宣言される前は変数の「デッド ゾーン」に属します。これは構文上「一時デッド ゾーン」と呼ばれます。 ES6 では、一時的なデッド ゾーンや let ステートメントや const ステートメントでは変数のプロモーションが発生しないことを規定しています。これは主に実行時エラーを減らし、変数が宣言される前に使用されて予期しない動作が発生するのを防ぐためです。

es6 マップは注文されていますか? es6 マップは注文されていますか? Nov 03, 2022 pm 07:05 PM

地図は注文済みです。 ES6 のマップ タイプは、多くのキーと値のペアを格納する順序付きリストです。キー名と対応する値はすべてのデータ型をサポートします。キー名の等価性は、「Objext.is()」メソッドを呼び出すことによって決定されます。 , したがって、数字の 5 と文字列「5」は 2 つのタイプとして判断され、プログラム内で 2 つの独立したキーとして現れることができます。

es2015はes6と同じですか? es2015はes6と同じですか? Oct 25, 2022 pm 06:51 PM

es2015はes6です。 es の正式名称は「ECMAScript」で、ECMA-262 標準に従って実装されたユニバーサルスクリプト言語です。2015 年 6 月に正式にリリースされたバージョンは、正式には ECMAScript2015 (ES2015) と呼ばれます。ECMAScript の 6 番目のバージョンであるため、 es6 と呼ばれます。

See all articles