Normative Changes Promise.all and Promise.race no longer use @@ species to construct a new instance. RegExp.prototype.[[@@ split]] now coerces limit using ToUint32. This was erroneously changed in ES6 to use ToLength which could result in broken array indexes. Add new early error for functions which contain both a non-simple parameter list and a use strict directive (Notes: here and here). Binding
ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog こんにちは。情報システム本部の伊藤(@koh110)です。 社内システムの開発、運用を担当しています。 今回、担当しているシステムをNode.js LTS(v4.x)へバージョンアップしました。 それに伴い実施したES6対応の中から3つの事例を紹介したいと思います。 varを撲滅しよう arrow functionを使おう callbackを撲滅しよう varを撲滅しよう varをlet, constに置き換えます。基本はconstに置き換えます。 メリットは以下の点で、コードの品質向上につながると思います。 プログラム中で変更不可である事を明示的に示せる。 誤った使い方をした時にバグとして検出される。 varを利用するとブロック
This is the third post of series in which we are going to explore the usage of React with ECMAScript6 and ECMAScript7. You could find links to all parts of series below: React and ES6 - Part 1, Introduction into ES6 and React React and ES6 - Part 2, React Classes and ES7 Property Initializers React and ES6 - Part 3, Binding to methods of React class (ES7 included) React and ES6 - Part 4, React Mix
警告 以下でのモジュールの説明はトランスパイラであるBabel 5,6で動作を確認した振舞いについての記述です。2015年11月現時点で、ECMAScriptのモジュール仕様策定範囲は、本来の全体範囲のまだ一部であるとのことです。その状況でのBabelの実装は、良く言えば先行的、悪く言えば将来そのままである保証はなく、現時点でも他のES2015をサポートする処理系との間での相互運用の保証はありません。また、現時点でBabelのモジュール機能を使うこと自体にリスクがあるという意見もあります。CommonJS側からBabelが生成したモジュールをCommon JSモジュールとして読み込もうとしたときの互換の問題として、Babel5で可能だったことがBabel6では利用不可になる、といったことも起きているようです。 そこらへんを含めて解説されているこちらの資料が参考になります。 (2015/11
This webpage was generated by the domain owner using Sedo Domain Parking. Disclaimer: Sedo maintains no relationship with third party advertisers. Reference to any specific service or trade mark is not controlled by Sedo nor does it constitute or imply its association, endorsement or recommendation.
React と Cycle.js を学び始めると、Twitter のつぶやきを含めて、こまごまごしたことを調べる必要があり、記憶力の限界を超えたので、自分の関心の変遷を振り返りながら、情報源をまとめました。ES6 の実装の課題とおよび将来の ES.next の標準化の動きについても併記しました。 プログラミングスタイル 新しい機能をなぜ導入するのかについて振り返るために QCon Tokyo 2013 の Douglas Crockford 氏の講演を文字に起こした記事 (前編、後編)を読んで印象に残ったことを抜粋しました。 スタイルは間違いを減らすためにある スタイルは個人の嗜好や自己表現のためではなく、間違いを減らすためにある。 わるいスタイルを採用する人の典型例は勉強不足な人、古い教育を受けた人、スリルを好む人、自己顕示欲家。 めったに起きないと思っていることはいずれ起きる。 エレガ
JavaScriptにもクラスがやってきた!JavaScriptの新しいclass構文をマスターしよう 高津戸壮(株式会社ピクセルグリッド) ECMAScript 2015(ECMAScript 6)で新たに追加された待望のclass構文について、その概要をサンプルコードを交えて紹介します。 これまでのJavaScriptにおけるクラス 多くのプログラミング言語はクラスを作れる機能を持っていますが、JavaScriptにその機能は用意されていませんでした。しかし、JavaScriptにはprototypeという柔軟な仕組みが存在しており、このprototypeを利用することで、他の言語で表現されている「クラス」と似たような振る舞いを再現することが可能でした。 それは例えば、こんなふうにです。 /* Cat雛形の作成 */ function Cat(name) { this.setName(
A relevant ad will be displayed here soon. These ads help pay for my hosting. Please consider disabling your ad blocker on Pony Foo. These ads help pay for my hosting. My ES6 in Depth series consists of 24 articles covering most syntax changes and features coming in ES6. This article aims to summarize all of those, providing you with practical insight into most of ES6, so that you can quickly get
追記 注意 サンプルコードなので省いていますがコードではawaitとしてPromiseのコールバックを隠ぺいしています。 実際にはPromiseがresolveではなくrejectを返すこともあるので、実際のコードではtry-catchを使ってちゃんとエラーを捕捉しましょう。
追記(2015/10/16) コメント欄にて @kawazさんにご指摘いただいたpackage.json内のscriptsにおける依存パッケージのコマンド呼び出しを修正しました。 追記(2015/10/10) reduxにdoc追加のpull requestを送ったところ、mergeされて その後 applyMiddleware()を使う方法のほうが良いってことでtweakされてます。 applyMiddlewareを使う方法はこちら es6いいですよね。最近reduxを使っており、その関係でes6でのテストコードの書き方も含めざっと調べたいと思ったのでまとめます。 テスト環境のセットアップ アサーションには、power-assertを使いたいと思います。テストランナーはpower-assert公式でも使っているmochaで。 npmを使ってインストールしていきます。 espower-ba
はじめに ES6 (EcmaScript 6)を試そうと、Babelのドキュメントを読んでいたところ、末尾呼び出し(Tail Call)の最適化をしていることにびっくり。公式リリース(2015年6月)から3ヶ月あまり経ってはいますが、ES6が末尾呼び出し最適化を仕様としてサポートしていることをようやく知りました。 現状で末尾呼び出し最適化をサポートしているブラウザはなく(ブラウザやaltJSなどのES6互換表を参照)、唯一、ES6からES5へのトランスパイラであるBabelのみが部分的(直接的な末尾再帰のみ)ではありながらサポートしているようですね。 今回の記事では、来たるES6時代(いまさらの感はありますが)に備えて、末尾再帰とその最適化について簡単に解説した上で、Babelを利用して実際にJavaScriptでの末尾再帰の最適化を実験してみたいと思います。 ざっくり概要 再帰関数 は関
textlint 3.6.1でコードベースをES6に書き直して、特に問題無く動いてるっぽいのでどういう手順で書き換えたかについての話。 Release Moving to ES6 · azu/textlint 具体的な作業は以下に残ってます。 Move to ES6 · Issue #11 · azu/textlint to ES6 by azu · Pull Request #27 · azu/textlint 事前準備 テストを書く テストが書かれてると変換した時にエラーがスグ発見できるのでカバレッジが高いテストがあると安心して変換出来ます。 面倒な時はExampleテストを追加してみるといい気がします。 npmパッケージをExampleテストしよう | Web Scratch そのライブラリのユースケースを考えて幾つかのパターンを実行出来るExampleテストを作っておくと、普通に実
This blog post helps you to get started with ECMAScript 6 (ES6): It explains how you can interactively try out ES6. It lists ES6 features that are easy to adopt, along with how those features are coded in ES5. Trying out ECMAScript 6 # There are three simple ways to play with ES6: Web browser: use the online Babel REPL, an interactive playground that compiles ES6 to ES5. There is nothing to insta
React v0.13.0 から ECMAScript 6 (以下 ES6) の class によるコンポーネント定義がサポートされた。また Node v0.12 でも一部の機能が有効となっている。このように ES6 もだいぶ身近になってき。先行学習もかねて趣味の開発では積極採用してゆきたい。 とはいえある程度は広範な環境で動いてほしい。そのため実装は ES6 でおこない実行用スクリプトは ES5 に変換したものを使用する。これを実現するため Browserify transform の babel/babelify を試す。 Babel Babel は ES6 として記述されたスクリプトを ES5 に変換するためのツールである。以前は 6to5 と呼ばれていたが諸事情により名称変更したそうだ。ES6 機能を先取りするという意味で AltJS だと TypeScript が近いのかもしれな
componentWillMount() { store.on("change", this.onChange.bind(this)); } componentWillUnmount() { store.off("change", this.onChange.bind(this)); } だとイベントが解除できないという問題が起こります。 そのため、事前にbind済みのハンドラを持っておく必要が出てきたりします。 サンプル この記事では上記のような、ボタンでカウントアップするだけのものを React - thisを普通にbindする手法 React - azu/idempotent-bindを使ってbindする手法 deku を使って書く の3つ書いてみます。 ソースコードはこちら azu/component-event-binding React - thisを普通にbindする手法 こ
2015-03-14 Babel.jsイントロダクション ES6 Babel クライアントサイドJS Node.js Browserify JavaScript mocha ここのところしばらく、プライベートでbabelを触っていて、次案件あたりから業務で使いたいなと思ったので、社内外への共有として書いておく。 Babel · The transpiler for writing next generation JavaScript Babelとは Babelは、ECMAScript6(以下、ES6)のコードをECMAScript5(以下、ES5) のコードに変換するトランスパイラ(コードを変換してコードを生成するもの)。 ReactやFlowにフレンドリーであり、ReactのJSXをプラグインなしでES5のコードに変換できる。 また、Babel自体はNode.jsだけでなく、Browse
Moving Codecademy to ES6, Webpack, and React How we build our web-based learning interface March 18, 2015 When Codecademy was born in the summer of 2011, the natural choice for a frontend stack was Backbone + jQuery. Backbone was less than a year old and widely considered the state-of-the-art framework for creating frontend applications. Combined with jQuery, one could do a lot of novel things wit
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く