Replies: 1 comment
-
リリースやOpen Collectiveについて意見や感想などがあれば教えてください! |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
v5.0.0: ES2023
JavaScript Primer v5.0.0では、2023年6月27日にリリースされたECMAScript 2023(ES2023)をサポートしています。
Change Array by copy
概要
配列の破壊的なメソッドである
splice
、reverse
、sort
に対して、ES2023では非破壊的なバージョンである
toSpliced
、toReversed
、toSorted
が追加されました。また、配列への代入(
array[index] = item
)という破壊的な処理に対して、with
という非破壊的なメソッドが追加されました。変更されたページ
変更内容
toSpliced
、toReversed
、toSorted
、with
メソッドの解説の追加array[index] = item
Array.prototype.with
[ES2023]Array.prototype.pop
array.slice(0, -1)
とarray.at(-1)
[ES2022]Array.prototype.push
[...array, item]
[ES2015]Array.prototype.splice
Array.prototype.toSpliced
[ES2023]Array.prototype.reverse
Array.prototype.toReversed
[ES2023]Array.prototype.sort
Array.prototype.toSorted
[ES2023]Array.prototype.shift
array.slice(1)
とarray.at(0)
[ES2022]Array.prototype.unshift
[item, ...array]
[ES2015]Array.prototype.copyWithin
[ES2015]Array.prototype.fill
[ES2015]配列のメソッドを非破壊的なメソッド(Immutable)と破壊的なメソッド(Mutable)に分けると、次のようになります。
関連
Array.prototype.{findLast, findLastIndex}
概要
ES2023では、
Array.prototype.findIndex
とArray.prototype.find
に対応するメソッドとして、Array.prototype.findLastIndex
とArray.prototype.findLast
が追加されました。それぞれ
findIndex
とfind
と同じ使い方ですが、末尾から探索した結果を返すメソッドになっています。変更されたページ
変更点
Array.prototype.findLastIndex
とArray.prototype.findLast
の対応Array.prototype.lastIndexOf
のサンプルコードを追加関連
Symbols as WeakMap keys
概要
ES2022までは、WeakMapのキーとWeakSetの値にはオブジェクトのみが指定可能でした。
これは弱い参照をGCで解放するために、キーは一意な値のみが指定可能という制限からくるものでした。
Symbolも一意な値となるため、ES2023ではオブジェクトに加えてSymbolも指定できるように仕様が変更されました。
変更されたページ
変更内容
関連
その他のProposal
その他にもES2023にマージされたProposalとしてHashbang Grammarがあります。
Hashbang Grammarは
#!
から始まる最初の行をコメントとして扱う仕様ですが、Node.jsなどの実行環境との相互運用性を考慮して、ES2023で仕様が変更されました。jsprimerでは特に取り扱っていませんが、興味がある方は次のIssueを参照してください。
ライセンスの変更
今までのjsprimerのライセンスは次のとおりでした。
v5.0.0からはjsprimerのライセンスを次のように変更します。
CC BY-NCでは商用利用を禁止する条項がありますが、
CC BYにはこの条項は含まれません。
元から、教材などとしての利用は許可していましたが、商用かどうかの判断が難しいものになっていました。
今回の変更で、著作権者表示をすれば商用でも利用可能なライセンスになっています。
これにより、jsprimerの文章も、より自由に使いやすくなります。
変更の詳細についてはIssueを参照してください。
Open Collectiveでjsprimerを支援できるようになりました
BabelやPrettierなども利用しているOpen Collectiveというサービスを使い、JavaScript Primerというプロジェクトを金銭的に支援できるようになりました。
次のCollectiveのページから支援できるようになっています。
このOpen Collectiveでの支援は、主に企業ユーザーを対象にしています。
支援することでWebサイトや次回(ES2024)のリリースノートにスポンサー表示ができるようになります。
また、"推しページ"を設定できるようにする予定で、https://jsprimer.net/の特定のページにメッセージ(書籍のポップをイメージ)を出せるようにする予定です。
JavaScript Primerは変化を前提にした書籍のプロジェクトであるため、毎年のECMAScriptのリリースに合わせて内容を改訂しています。
jsprimerは変化に対応できる基礎を身につけられること、またそれを迷わずに学べるようにすることを目的にしたプロジェクトです。
変化に対応するには、書籍自体も変化に対応する必要があります。
更新に継続的に行うのに必要なリソースとしてヒト、カネ、モノがあります。
Open Collectiveは、プロジェクトに対して金銭的な支援をすることができるサービスです。
単純に受け取るだけではなく、プロジェクトにContributeしてくれた方に還元することもできます。
それらのやりとりがオープンに行えるのがOpen Collectiveの特徴です。
ざっくりとした試算では、jsprimerの毎年の更新にかかる必要は年間で687,840円ぐらいです。
詳細は次の記事にまとめています。
JavaScript Primer - Open Collectiveでの支援方法として、Yearly Gold Sponsors(年間)とMonthly Gold Sponsors(月間)を用意しています。
jsprimerは年ごとの更新なので、Yearly Gold Sponsorsがわかりやすいかと思います。
まだ、どういう形が最適なのかはわかっていないため、Contributeしてくれる方(金銭的な支援もContributeです)と考えながら形を作っていけるといいなと思います。
次のページに、このリリースについてのDiscussionを用意しているので、そちらで意見を聞かせてください!
Open Collectiveについてはまだ検討中の部分も多いので、まずは公開するところから始めています。
これからも更新されていくと思うので、更新情報を知りたい方は、リポジトリをWatchしてみてください。
また、メールで通知を受け取りたい方は、次のフォームからメールアドレスを登録すると更新情報を受け取れます。
This discussion was created from the release v5.0.0: ES2023/CC BYライセンスに変更/Open Collective.
Beta Was this translation helpful? Give feedback.
All reactions