Web先端技術味見部#15 ECMAScript6をそろそろ触る
var textList = []; for each(let {text} in yoshikawa) textList.push(text); alert(textList); とかできた。ちょっと直感的じゃない…。 #ajimibu
2013-01-17 20:32:12// 引数がundefinedだと初期値、nullならnull function f(a=123, b=234) { console.log(a, b); } f(null, undefined); // => null 234 #ajimibu
2013-01-17 20:33:07function hoge(a,...args) とかで可変引数できる。argumentオブジェクトを使うとVMが遅くなるので、これで使わなくて済むようになる #ajimibu
2013-01-17 20:36:50argumentsの碌でもなさが超力説されてて面白いwwww 確かに可変長引数が導入されるとargumentsなんかアクセスしなくてよくなるね! #ajimibu
2013-01-17 20:37:02jsのargumentsはクソなので使ってほしくないらしいw ES6では可変長引数が正式にサポート。 #ajimibu
2013-01-17 20:37:10JavaScriptでargumentsを使うと速度が遅くなる。だからES6で可変長引数をサポートする事にした。らしい。へえ。 #ajimibu
2013-01-17 20:37:31実引き数側のArrayの展開ができなさげじゃね?Javaでいう void method(Object... objs) { method(objs); } 的な事ができなくて辛いねコレ…みたいな話をしている。 #ajimibu
2013-01-17 20:38:48// 可変長引数 function f(x, ...args) { console.log(x, args); } f(1,2,3); // => 1 [2,3] #ajimibu
2013-01-17 20:39:15WeakMapのKeyはObjectしか受け付けない(Stringリテラルとか数値リテラルみたいなプリミティブなアレはダメ)らしい。なんだとー #ajimibu
2013-01-17 20:41:37Objectのプロパティはキーが文字列限定。Mapはオブジェクトをキーにとれるため、例えばこのDOM要素のメタ情報を…みたいなものをDOM要素自身に付加せず行える RT @vvakame: MapとObjectの差がよーわからんしどう使い分けるべきなのかわからん #ajimibu
2013-01-17 20:44:44メタ情報を付加したいオブジェクト自身を汚染せずにデータを付加する RT @dynamitter: Objectのプロパティはキーが文字列限定。Mapはオブジェクトをキーにとれるため、例えばこのDOM要素のメタ情報を…みたいなものをDOM要素自身に付加せず行える #ajimibu
2013-01-17 20:45:45MapとSetを使えばキーにオブジェクトを指定するので、文字列化してしまうと同値になる数値と文字列も区別される。 #ajimibu
2013-01-17 20:47:44