{}const=>[]async()letfn</>var
開発

ECMAScriptの準備: 生インポート、pushAll、新しいイテレーター

TC39が議論している提案と、それらが通常のJavaScriptを変えることができる理由

К

Kodik

著者

1分で読める

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()からのコストが削除され、コードが透明になります。

🔥 10万人以上の学生が参加中

理論を読むのに疲れた?
コーディングの時間だ!

Kodik — 実践でプログラミングを学ぶアプリ。AIメンター、インタラクティブなレッスン、実際のプロジェクト。

🤖 AI 24時間
🎓 修了証
💰 無料
🚀 始める
今日参加

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

イテレーターのメソッド mapfiltertake など

Stage 3

なぜこれが重要なのでしょうか?

  • インポート JSを真にマルチフォーマット言語にします。

  • pushAll 松葉杖を取り除き、読みやすさを向上させます。

  • イテレーター 言語を新しい宣言レベルに引き上げます。

私たちは コディケ 私たちは、このような機能を最初に掘り下げるのが大好きです。そうすれば、後で簡単な言葉で説明し、苦労せずに使い方を示すことができます。アプリにはJavaScriptやその他の言語のコースがあります。 Telegramチャンネル TC39の最新の提案とフロントエンドの最新ニュースについて話し合います。

📲 参加する 私たちに連絡して、将来のJSを知ってください!

🎯先延ばしをやめよう

記事は気に入った?
実践の時間だ!

Kodikでは読むだけでなく、すぐにコードを書く。理論 + 実践 = 本当のスキル。

即座に実践
🧠AIがコードを説明
🏆修了証

登録不要 • カード不要