Fork me on GitHub

2016-11-15のJS: TypeScript 2.1RC、Node.js v7.1.0リリース

Edit on GitHub 編集履歴を見る

JSer.info #305 - TypeScript 2.1 RCがリリースされました。

2.1ではasync/awaitがES3とES5への出力ができるようになりました。
また、tsconfig.jsonにextendsの追加、--target ESNextのサポート、JSXをReact以外でも利用できるように--jsxFactoryの追加などが行われています。

RC時点(2.1.1)ではまだ入っていませんが、正式リリース時にはMapped typesなどの追加も予定されています。


Node.js v7.1.0リリースされました。

Node.js v7.0.0でString(global)意図しない破壊的な変更が入っていたのが修正されました。

V8のECMAScript仕様追従により、Node.js v7.0.0でString(global)"[object Object]"を返すようになっていました。

// Node.js v7.0.0
String(global);// "[object Object]"

そのためglobal[Symbol.toStringTag]が定義されました。これにより、今までと同じ "[object global]"が返されるようになっています。

// Node.js v7.1.0
String(global);// "[object global]"

このパターンはNode.jsで実行されているかを判定するために使ってるモジュールがあったため、一度元の挙動(Node.js v6)に戻すようです。


ヘッドライン


TestCafe v0.10.0 Released | TestCafe

devexpress.github.io/testcafe/blog/testcafe-v0-10-0-released.html

JavaScript E2E testing ReleaseNote

TestCafe v0.10.0リリース。
Snapshot APIを扱いやすく、automatic waitの仕組みを改善、speedオプションでテストの実行速度をコントールできるようになるなど


TypeScript 2.1 RC: Better Inference, Async Functions, and More | TypeScript

blogs.msdn.microsoft.com/typescript/2016/11/08/typescript-2-1-rc-better-inference-async-functions-and-more/

TypeScript ReleaseNote

TypeScript 2.1 RCリリース。
any型の改善、tsconfig.jsonのextends対応、async/awaitがES3/ES5へ出力できるようになるなど


Node v7.1.0 (Current) | Node.js

nodejs.org/en/blog/release/v7.1.0/

node.js ReleaseNote

Node.js v7.1.0リリース。
V8の仕様追従により意図しない破壊的な変更が起きていた。

String(global);// "[object Object]"

そのためglobal[Symbol.toStringTag]が定義された。これにより、今までと同じ "[object global]"が返されるようになった。

String(global);// "[object global]"

Release Notes for Safari Technology Preview 17 | WebKit

webkit.org/blog/7071/release-notes-for-safari-technology-preview-17/

safari ReleaseNote

Safari Technology Preview Release 17リリース。
NPAPIプラグインのサポート終了、Custom Elementのデフォルト有効化、rel=noopenerのサポートなど


アーティクル


Migrating to Jest – Medium

medium.com/@kentcdodds/migrating-to-jest-881f75366e7e

JavaScript React testing

AVAとMochaでのテストをJestにマイグレーションする方法とツール(codemods)について。
UI testsの時間が短縮されてる。


Migrating an Angular 1 App to Angular 2 - Part 1

auth0.com/blog/migrating-an-angular-1-app-to-angular-2-part-1/

AngularJS tutorial

AngularJS 1.xのアプリをAngularJS 2へマイグレーションするチュートリアル


FLOCSSを使ってCSSファイルを20,000行から9,000行にした話 - Qiita

qiita.com/Atsss/items/4f9d98fb1d0546539c09

CSS リファクタリング

CSSのリファクタリング手法や方針について。
どのようなフローでリファクタリングを進めていったかや進捗の可視化について


2016年、Web Audio API はどう変わったのか? | g200kg Music & Software

www.g200kg.com/archives/2016/11/2016web-audio-a.html

web audio API

Web Audio APIの変更点について。
AudioWorkerがAudioWorkletにリネーム、ConstantSourceNodeの追加、コンストラクタのサポートなど


Writing a JavaScript Framework - Data Binding with ES6 Proxies | @RisingStack

blog.risingstack.com/writing-a-javascript-framework-data-binding-es6-proxy/

JavaScript library

ProxyやReflect APIを使い、値の変更を監視するObservableライブラリ。
ES5のgetter/setterを使ったアプローチとの比較


Pitfall: not all objects can be proxied transparently

www.2ality.com/2016/11/proxying-builtins.html

JavaScript ECMAScript

ES2015のProxyでhandlerオブジェクトが空である場合に透過的な動作を期待するがそうではないという話


Logging Errors in Client-Side Applications

www.sitepoint.com/logging-errors-client-side-apps/

JavaScript debug library

クライアントサイドのロガーやエラー収集サービスについてのまとめ


Improving Perceived Performance with Multiple Background Images – CSS Wizardry – CSS, OOCSS, front-end architecture, performance and more, by Harry Roberts

csswizardry.com/2016/10/improving-perceived-performance-with-multiple-background-images/

CSS 画像

background-imageに指定した画像が表示されるまで、linear-gradientを使った模様を代替表示するFallbackについて


スライド、動画関係


Chrome Dev Summit 2016 - YouTube

www.youtube.com/user/ChromeDevelopers

Chrome video イベント

Chrome Dev Summit 2016の動画まとめ


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


deck.gl

uber.github.io/deck.gl/

WebGL library

Uber製のWebGLを使ったデータビジュアライゼーションライブラリ


doiuse...?

www.doiuse.com/

CSS tool

CSSをペーストして指定したブラウザ(autoprefixerのフォーマット)で利用できるかをチェックできるツール


caiogondim/logdown.js: Debug utility with markdown support that runs on browser and server

github.com/caiogondim/logdown.js

JavaScript debug library

ブラウザとNode.jsで動くシンプルなロガーライブラリ


th0r/webpack-bundle-analyzer: Webpack plugin and CLI utility that represents bundle content as convenient interactive zoomable treemap

github.com/th0r/webpack-bundle-analyzer

webpack Tools

webpackのbundleの構成要素やサイズをビジュアライズできるプラグイン


DJWassink/Promise-parallel-throttle: It's like Promise.all(), but throttled!

github.com/DJWassink/Promise-parallel-throttle

JavaScript Promises library

一度に実行する数を指定できるPromise.all的なライブラリ


dop251/goja: ECMAScript 5.1(+) implementation written in Go

github.com/dop251/goja

ECMAScript JavaScript golang

ECMAScriptのGo言語実装。
ES5.1相当の実装をしてる


dhamaniasad/HeadlessBrowsers: A list of (almost) all headless web browsers in existence

github.com/dhamaniasad/HeadlessBrowsers

browser まとめ

ヘッドレスブラウザ(テストのためのライブラリも含む)のまとめ


この記事へ修正リクエストをする
JSer.info Slackに参加する