Fork me on GitHub

2016-06-21のJS: ECMAScript 2016リリース、QUnit 2.0

Edit on GitHub 編集履歴を見る

JSer.info #284 - ECMAScript 2016が正式にリリースされました :tada:

どのような変更があったのかは以前簡単にまとめています。

機能的に追加されたのは、Array.prototype.includes**演算子ぐらいなので大きな変化ありません。
(Proxyの[[enumerate]] trapとReflect.enumerateが削除されたりもしています)

一番大きな変化として仕様策定プロセスの変更で、毎年スナップショット的にリリースする形になっています。
ちょっと古いですが次の記事で解説しています。

HTMLの仕様と同じで仕様を読むという意味で参照する場合は、スナップショットよりもGitHubにあるLiving Standardな仕様を参照した方が良いと思います。

また、ECMAScript 2016と同時にECMAScript® 2016 Internationalization API Specificationもリリースされています。
Intlオブジェクトなどを決めているECMAScriptの国際化APIの仕様です。
こちらも毎年リリースの策定プロセスへ変更されています。

ECMAScriptの最新情報についてはECMAScript Dailyの方に書いているので、興味がある人は見てみるといいかもしれません。


JavaScriptのテストフレームワークQunit 2.0がリリースされています。

非推奨となっていたグローバル関数を削除、メソッドのリネームなど破壊的な変更が中心です

  • module()test()はそれぞれQUnit.*以下に移動
  • start()stop()の代わりにassert.async()を利用
  • setup/teardownbeforeEach/afterEachにリネーム
  • QUnit.initQUnit.resetの削除

アップグレードガイドとマイグレーションツールが公開されているので合わせて参照してください


ヘッドライン


ECMAScript® 2016 Language Specification

www.ecma-international.org/ecma-262/7.0/

ECMAScript spec

ECMAScript 2016リリース。
毎年リリース体制になってから初リリース


ECMAScript® 2016 Internationalization API Specification

www.ecma-international.org/ecma-402/3.0/

ECMAScript i18n spec

ECMAScript 2016 Internationalization API仕様リリース。
Unicode 8.0を必要とするようになり、Intl.getCanonicalLocales()の追加。


Release v1.9.0 · testem/testem

github.com/testem/testem/releases/tag/v1.9.0

testing JavaScript ReleaseNote library Tools

testem 1.9.0リリース。
カスタムレポーターがmetaデータを受け取る事ができるようになった


Release 2.0.0 · jquery/qunit

github.com/jquery/qunit/releases/tag/2.0.0

JavaScript testing library ReleaseNote

QUnit 2.0.0リリース。
非推奨のグローバル関数を削除、メソッドのリネームなど破壊的な変更が含まれれる

  • module()test()はそれぞれQUnit.*以下に移動
  • start()stop()の代わりにassert.async()
  • setup/teardownbeforeEach/afterEach
  • QUnit.initQUnit.resetの削除

アップグレードガイドは以下を参照


ESLint v2.13.0 released - ESLint - Pluggable JavaScript linter

eslint.org/blog/2016/06/eslint-v2.13.0-released

ESLint ReleaseNote

ESLint v2.13.0リリース。
2.x系では最後になり、次は3.0.0が予定されている


RC2 Now Available

angularjs.blogspot.com/2016/06/rc2-now-available.html

AngularJS ReleaseNote

Angular2 RC2リリース


Safari 10.0

developer.apple.com/library/prerelease/content/releasenotes/General/WhatsNewInSafari/Articles/Safari_10_0.html

safari ReleaseNote

Safari 10のリリースノート。
IndexedDB、CSP、Shadow DOM v1、ES6、ECMA i18n APIなど


アーティクル


ReactでTDD(テスト駆動開発)を始めよう : 環境構築からテスト作成、機能実装までの詳解ガイド | プログラミング | POSTD

postd.cc/getting-started-with-tdd-in-react/

React testing 翻訳

React ComponentをTDDする話


A Quick Introduction To Polymer — WebComponents.org

webcomponents.org/articles/a-quick-polymer-introduction/

WebComponents library tutorial

Polymer入門向けの概要を説明した文章


実例とともに学ぶECMAScript 2015 〜Generator〜 – NET BIZ DIV. TECH BLOG

tech.recruit-mp.co.jp/front-end/post-10358/

ECMAScript JavaScript

Generator、Iteratorについて。
Iterableを扱うfor of、Array.from、spread operatorについて。
「GeneratorはIteratorを返す関数」に至るまでを丁寧に解説してる記事


The SoundCloud Client in React + Redux - RWieruch

www.robinwieruch.de/the-soundcloud-client-in-react-redux/

React redux tutorial

React+ReduxでSoundcloudのクライアントを作るチュートリアル


The Future of Declaration Files | TypeScript

blogs.msdn.microsoft.com/typescript/2016/06/15/the-future-of-declaration-files/

npm TypeScript

npmからTypeScriptの型定義ファイルをインストールして使えるようになるという話。

npm install --save @types/lodash のような形で他にツールを必要としない


スライド、動画関係


Tips & Tricks in Front-End Development // Speaker Deck

speakerdeck.com/forloop/tips-and-tricks-in-front-end-development

CSS スライド Tips

object-fit、Viewport unit、既読リンクの扱い、壊れた<img />の表示、要素内が空の場合の表示、postMessage、SVGなどのフロントエンド向けのTips


CSS Animations, Orchestrated by David Khourshid

slides.com/davidkhourshid/deck-17#/

CSS スライド

CSSアニメーションのまとめかたについてのスライド


Resource (pre)loading

yoavweiss.github.io/link_htmlspecial_16/

HTML スライド

<link rel>についてのスライド
prefetch、resource loading、feature detectionについて


サイト、サービス、ドキュメント


mgiuca/web-share: Web API proposal for sharing data from a web page

github.com/mgiuca/web-share

WebPlatformAPI spec

navigator.shareのAPIについてのドキュメント。
Androidのintents、iOSのUIActivityViewControllerのような共有するためのAPI。
Chromeで実装検討中


ソフトウェア、ツール、ライブラリ関係


fed135/Kalm: Node socket wrapper and optimizer

github.com/fed135/Kalm

WebSocket JavaScript node.js WebRTC library

WebSocketやWebRTCなど双方向の通信を行うライブラリ。
Nagleアルゴリズムの実装など効率よくパケットを送れるような仕組みを持っている。
Adapterで利用するプロトコルを変更できるようになっている


af/envalid: Environment variable validation for Node.js

github.com/af/envalid

node.js JavaScript library

Node.jsのprocess.envの値をバリデーションするライブラリ


headless - chromium/src - Git at Google

chromium.googlesource.com/chromium/src/+/master/headless/

Chrome

Chromiumヘッドレスブラウザのリポジトリ


alexreardon/raf-stub: Accurate and predictable testing of requestAnimationFrame and cancelAnimationFrame

github.com/alexreardon/raf-stub

JavaScript animation testing library

requestAnimationFrameのstubライブラリ。
ステップごとにframeを進めることができる


書籍関係


Manning | Angular 2 in Action

www.manning.com/books/angular-2-in-action

AngularJS book

Angular 2についての書籍


この記事へ修正リクエストをする
記事を紹介する