Chrome 51 の変更点
◆ あまりこれといった変更がなかった
今回は普通に使う人には全く変更なしかも
DevTools の Elements タブ
選択中やホバー中のタグの範囲がわかりやすいように縦線が入るようになりました

DOM の配列風なオブジェクトに Symbol.iterator が実装されました
49
51
DOMTokenList は前から使えましたので HTMLCollection と NodeList で使えるようになったようです
他にも 配列っぽいのあったっけ?
また Function.name が自動でつけられるようになりました
無名関数でも最初に代入された変数名やプロパティ名が名前になります
最初の代入されるタイミングだけなので後から別の変数に入れても変わりません
また 配列の要素や代入しないで使う場合 オブジェクトでも [] を使って代入した場合 は名前が空文字列になります
Date や RegExp などの Symbol.toStringTag は変化なしです
と 気づいたのや調べて出てきたのはこれくらい
デフォルトオフの状態でならもっと色々 WebAPI が実装されています
新規では credentials API が使えるようになったみたいですが どんなものかイマイチわかってません
また Chrome は同じバージョンでも Windows, Mac, Linux, Android とさまざまな OS に出ていて 今回は Windows 以外では大きめな変更だったようです
Mac ではタブのデザインが影や丸みのないシンプルなものになったらしいです
Android では 5.0 以降のブラウザのタブなのかアプリのウィンドウなのかよくわからない感じに混ざってましたが これが不評だったようでなくなって Chrome のウィンドウ(アプリ)は Chrome ひとつだけでタブで管理される用に戻るんだとか
DevTools の Elements タブ
選択中やホバー中のタグの範囲がわかりやすいように縦線が入るようになりました

DOM の配列風なオブジェクトに Symbol.iterator が実装されました
49
[...document.children]
Uncaught TypeError: (var)[Symbol.iterator] is not a function
;[...document.querySelectorAll("body").constructor]
Uncaught TypeError: (var)[Symbol.iterator] is not a function
;[...document.body.classList]
// []
Uncaught TypeError: (var)[Symbol.iterator] is not a function
;[...document.querySelectorAll("body").constructor]
Uncaught TypeError: (var)[Symbol.iterator] is not a function
;[...document.body.classList]
// []
51
[...document.children]
// [ <html lang="ja"> ... </html>]
;[...document.querySelectorAll("body").constructor]
// [ <body> ... </body>]
;[...document.body.classList]
// []
// [ <html lang="ja"> ... </html>]
;[...document.querySelectorAll("body").constructor]
// [ <body> ... </body>]
;[...document.body.classList]
// []
DOMTokenList は前から使えましたので HTMLCollection と NodeList で使えるようになったようです
他にも 配列っぽいのあったっけ?
また Function.name が自動でつけられるようになりました
var fn = function(){}
console.log(fn.name)
// fn
var o = {meth: function(){}}
console.log(o.meth.name)
// meth
var a = [function(){}]
console.log(a[0].name)
// ""
var f = o.meth
console.log(f.name)
// meth
console.log(function(){}.name)
// ""
var var_name = function func_name(){}
console.log(var_name.name)
// func_name
var o = {}
o["fname"] = function(){}
console.log(o.fname.name)
// ""
console.log(fn.name)
// fn
var o = {meth: function(){}}
console.log(o.meth.name)
// meth
var a = [function(){}]
console.log(a[0].name)
// ""
var f = o.meth
console.log(f.name)
// meth
console.log(function(){}.name)
// ""
var var_name = function func_name(){}
console.log(var_name.name)
// func_name
var o = {}
o["fname"] = function(){}
console.log(o.fname.name)
// ""
無名関数でも最初に代入された変数名やプロパティ名が名前になります
最初の代入されるタイミングだけなので後から別の変数に入れても変わりません
また 配列の要素や代入しないで使う場合 オブジェクトでも [] を使って代入した場合 は名前が空文字列になります
Date や RegExp などの Symbol.toStringTag は変化なしです
console.log(Date.prototype[Symbol.toStringTag])
// undefined
console.log(RegExp.prototype[Symbol.toStringTag])
// undefined
// undefined
console.log(RegExp.prototype[Symbol.toStringTag])
// undefined
と 気づいたのや調べて出てきたのはこれくらい
デフォルトオフの状態でならもっと色々 WebAPI が実装されています
新規では credentials API が使えるようになったみたいですが どんなものかイマイチわかってません
また Chrome は同じバージョンでも Windows, Mac, Linux, Android とさまざまな OS に出ていて 今回は Windows 以外では大きめな変更だったようです
Mac ではタブのデザインが影や丸みのないシンプルなものになったらしいです
Android では 5.0 以降のブラウザのタブなのかアプリのウィンドウなのかよくわからない感じに混ざってましたが これが不評だったようでなくなって Chrome のウィンドウ(アプリ)は Chrome ひとつだけでタブで管理される用に戻るんだとか