社内の2017新卒向けブートキャンプ ( 研修 ) にて使用したスライド資料ですが、せっかくなので一般公開します。
Please leave your sense of logic at the door, thanks! Sunsetting the JavaScript Standard August 15th, 2016 by Mathias Bynens in WHATWG Back in 2012, the WHATWG set out to document the differences between the ECMAScript 5.1 specification and the compatibility and interoperability requirements for ECMAScript implementations in web browsers. A specification draft was first published under the name of
はじめに ECMA-262 6th がリリースされて ECMAScript (JavaScript) にモジュールの機能が導入されたわけですが、実際どんなものなのかはっきりわかってなかったので ECMA-262 6th を読んでみました。 このブログ記事はそのまとめです。 実践的な話 (TypeScript でモジュールの機能を使うことについてや、既存プロジェクトへのモジュールの導入など) はまた今度書くつもりです。 この文書では歴史的背景などには触れずに坦々と ECMA-262 を読んでいくだけですので、歴史的背景などを含めた解説を読みたい方は最後に挙げている関連ページなどを読むと良いと思います。 ECMA-262 6th を読む ECMA-262 6th (ECMAScript 2015 Language Specification) の中で、モジュールに関して述べられているところを引
async/await は ES7 の機能で、非同期処理を記述する上で非常に便利な機能である(仕様は安定していないと思う) まだ実装している処理系はないと思うが、babel などの transpiler をつかうと利用できる async/await をつかうと非同期処理を以下のように書くことができる function a() { return new Promise(function(resolve, reject) { setTimeout(function() { resolve('hello, ') }, 0) }) } async function b() { var value = await a() return value + 'world' } async function c() { var value = await b() console.log(value) ret
While we work on rounding out our ES6/ES2015 support, the Chakra team is already looking ahead to ES2016 and, especially, to Async Functions. Today, we’re excited to announce the availability of Async Functions in Microsoft Edge as an experimental feature, available to preview starting in Microsoft Edge (EdgeHTML 13.10547). http://channel9.msdn.com/Blogs/Seth-Juarez/Async-Functions-in-JavaScript-w
JavaScriptは値渡しなのでしょうか?共有渡し(参照の値渡し)なのでしょうか?普通のObjectはすべて共有渡しだと思うのですが、プリミティブ型(?)については違うようなのです。しかし、StackOverflow(※)でもまとまっていないようで、よくわかりませんでした。詳細を分かる方がいれば、下記について教えて下さい。 ※参考: StackOverflow: Is JavaScript a pass-by-reference or pass-by-value language? 値渡しになる型はあるのでしょうか?ある場合は、どの型がなるのでしょうか? 1.の型のうちmutableな型はあるのでしょうか?ある場合は、mutableな型の破壊的メソッドはどのようなものがあるのでしょうか? 値渡しであることが分かる(共有渡しでは説明できない)コードはありますでしょうか? C++やC#で言う
概要 新しいプリミティブ型であるSIMD型及びAPIがV8で実装されてきている。 SIMDとは、複数の数値を並べて1つの値としたようなデータ型である。 これはCPUによって効率良くサポートされているデータ型であり、 1 + 2 -> 3 をするように [ 1, 2, 3, 4 ] + [ 2, 3, 4, 5 ] -> [ 3, 5, 7, 9 ] を1回の演算ですることができる。 つまり、沢山の数値を扱う場面でSIMD型を利用することで、何倍ものパフォーマンス向上が期待できる。 (※WASMに入ることとなり、ESからは一旦取り除かれました。) 実装される型 float32x4 32bit浮動小数点型を4つ並べた128bitのデータ型 float32はJSの通常のnumberであるところのfloat64より精度が低い int32x4 32bit符号付き整数型を4つ並べた128bitのデータ
March 19, 2015Understanding ECMAScript 6: Class and Inheritance Key Takeaways ES6 allows developers to simulate classes and inheritance with JavaScript, a prototype-oriented language, facilitating the creation of large applications for the web. ES6 introduces new semantics to JavaScript, such as not being able to call a constructor without ‘new’ or construct methods with ‘new’, and methods being n
JSFuckとは JSFuckは任意のJavaScriptプログラムを[, ], (, ), !, +からなる6文字で置き換える試みです。 意味分かんないですね、サンプルを見てみましょう。 alert(1) 上記のJavaScriptコードと [][(![]+[])[+[[+[]]]]+([][[]]+[])[+[[!+[]+!+[]+!+[]+!+[]+!+[]]]]+(![]+[])[+[[!+[]+!+[]]]]+(!![]+[])[+[[+[]]]]+(!![]+[])[+[[!+[]+!+[]+!+[]]]]+(!![]+[])[+[[+!+[]]]]][([][(![]+[])[+[[+[]]]]+([][[]]+[])[+[[!+[]+!+[]+!+[]+!+[]+!+[]]]]+(![]+[])[+[[!+[]+!+[]]]]+(!![]+[])[+[[+[]]]]+(!!
This document discusses the history and evolution of JavaScript and ECMAScript. It begins with the origins of JavaScript in the mid-1990s as LiveScript and Mocha, developed by Netscape. JavaScript was standardized by Ecma International as ECMAScript, with various versions released over time adding new features. The presentation focuses on the latest ECMAScript 6 specification, covering new feature
869996 – Set.prototype.{keys, values, entries} 875433 – iterator methods of [Array, Map, Set].prototype should be same function object as entries/values Array.prototype values() Map.prototype keys() values() entries() Set.prototype keys() values() entries() 辺りが実装された。 どのメソッドもイテレータを返す。 Array var arr = ["a", "b", "c"]; var iter = arr.values(); // [object Array Iterator] arr.push("d"); var v; for (let
What is test262? test262 is a test suite that may be used to check how closely a JavaScript implementation follows the ECMAScript 5th Edition Specification. The test suite contains thousands of individual tests, each of which tests some specific requirements of the ECMAScript specification. What is ECMAScript? "ECMAScript" is the name under which the language more commonly known as "JavaScript" is
The document discusses a self-hosted scheme written in JavaScript. JavaScript is used to implement a minimal Scheme interpreter and runtime. The goal is to have a fully self-hosted Scheme system written entirely in JavaScript that can run in any modern web browser without any other dependencies.Read less
ES-Discuss のメーリングリストで知った。 Object.prototype.get = function(){}; var o = {}; Object.defineProperty(o, "hoge", { value: "OK" }); // TypeError: property descriptors must not specify a value or be writable when a getter or setter has been specified Object.prototypeに get, set あたりのプロパティを追加してしまうと、Object.defineProperty()時に例外が発生していしまう件、というやつ。 Object.prototype に設定すべきでないプロパティ 先に、設定すべきでないプロパティをあげておく get set va
Similar in style to weak maps but without the funny garbage collection semantics or non-enumerability. Depends on the iterators and egal proposals. Depends on classes only for expository purposes. Given /** A non-stupid alternative to Array.prototype.indexOf */ function indexOfIdentical(keys, key) { for (var i = 0; i < keys.length; i++) { if (keys[i] is key) { return i; } } return -1; } Executable
Standard ECMA-262 5.1 Edition / June 2011 ECMAScript® Language Specification This is the HTML rendering of Ecma-262 Edition 5.1, The ECMAScript Language Specification. The PDF rendering of this document is located at https://ecma-international.org/wp-content/uploads/ECMA-262_5.1_edition_june_2011.pdf. The PDF version is the definitive specification. Any discrepancies between this HTML version and
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く