JavaScriptは再び大きな変化の瀬戸際にいます。
委員会 TC39ECMAScript 標準の開発責任者であるは、開発者の作業を大幅に簡素化できる最新の提案について説明します。Rawインポート、新しいメソッドpushAll、および「スマート」メソッドを使用したイテレーター。これらはすべて、次のリリースで言語に組み込むことができます。これらの機能が何であるか、そしてなぜ今それらに注目する価値があるのかを見てみましょう。
インポート属性と生インポート
私たちはimport x from '...'に慣れていますが、現代のフロントエンドはもはやJSとCSSに限定されません。JSON、WASM、さらには非標準のフォーマットも登場します。
提供内容:
import config from './config.json' with { type: 'json' };
import wasm from './engine.wasm' with { type: 'webassembly' };
バイナリファイルの場合、ArrayBufferなどの「生」データを直接操作する機能。これにより、fetch() + Response.text()からのコストが削除され、コードが透明になります。
pushAll —待望のアレイのアップグレード
今日、配列に配列を追加するには、次のように記述します。
arr.push(...other);美しいが、効果的ではありません。新しい方法:
arr.pushAll(other);✔ 隠れた割り当てなし
✔ 大規模データでの生産性向上
✔ 初心者にもわかりやすい
新しいイテレーター:コレクションスタイルの機能
TC39 は、Python や C# のコレクションのようになるように、イテレーターの拡張 API について議論しています。
const it = [1,2,3,4,5].values()
.filter(x => x % 2)
.map(x => x * 10);
console.log([...it]); // [10, 30, 50]
今後、イテレーターは「低レベルのもの」ではなく、データを操作するための本格的なツールになります。

TC39の現在の状況
新しい機能にはそれぞれ、アイデアから標準化までの道のりがあります。現在の状況は次のとおりです。
提案 | 説明 | Stage |
|---|---|---|
Import Attributes (Raw Imports) | リソースの種類(JSON、WASM、バイナリデータ)を指定したインポート | Stage 3 |
Array.prototype.pushAll | スプレッドなしで配列要素を追加する | Stage 1 |
Iterator Helpers | イテレーターのメソッド | Stage 3 |
なぜこれが重要なのでしょうか?
インポート JSを真にマルチフォーマット言語にします。
pushAll 松葉杖を取り除き、読みやすさを向上させます。
イテレーター 言語を新しい宣言レベルに引き上げます。
私たちは コディケ 私たちは、このような機能を最初に掘り下げるのが大好きです。そうすれば、後で簡単な言葉で説明し、苦労せずに使い方を示すことができます。アプリにはJavaScriptやその他の言語のコースがあります。 Telegramチャンネル TC39の最新の提案とフロントエンドの最新ニュースについて話し合います。
📲 参加する 私たちに連絡して、将来のJSを知ってください!
