タグ

2014年11月22日のブックマーク (4件)

  • https://note.mu/tehu/n/ndeaa11ef404e

    koba789
    koba789 2014/11/22
    カッコ悪いニャン
  • Class構文について - JS.next

    概要 待ち焦がれた人も多いことだろう。ES2015の一番の目玉機能とも言えるクラス構文が、ついにV8でサポートされた。 Class構文は、『関数(コンストラクタ)定義』+『.prototypeへのメソッド定義』の糖衣構文である。 JSで今まで様々に工夫されてきたクラスの書き方を、綺麗に統一してくれる可能性を秘めている。 クラスを作る 従来、Catクラスを作ろうとした場合このように書いてきた。 function Cat(name) { this.name = name } Cat.prototype.meow = function () { alert( this.name + 'はミャオと鳴きました' ) } しかしこの書き方だとどうしても、コンストラクタとメソッドの定義が分離されているため、クラスとしてまとまりがなく分かりづらく感じる。 メソッドが増えてきた時も、Cat.prototyp

    Class構文について - JS.next
    koba789
    koba789 2014/11/22
    スタティックメソッドも継承されてしまうあたり、好みが分かれそう
  • テンプレートリテラルが実装された - JS.next

    概要 テンプレート文字列を記述できる構文が実装された。 テンプレートリテラル 基の使い方 バッククオート『 ` 』で囲んだ文字が、文字列リテラル同様に文字列として評価される。 var t = `テンプレート` var s = "テンプレート" console.log(t) // "テンプレート" console.log(t == s) // true 改行がそのまま認識される。 var t = `テンプ レート` var s = "テンプ\n"+ "レート" console.log(t) // "テンプ⏎レート\t" console.log(t == s) // true 文字列中に変数などを埋め込む リテラル中の『${』と『}』で囲まれた部分は式として評価される。 var n = 123, f = () => 339 var t = `0${ n }45${ f() * 2 }9` v

    テンプレートリテラルが実装された - JS.next
    koba789
    koba789 2014/11/22
    セキュリティ界隈はこれを使った XSS 考えてほしい
  • vue.jsでバインディング済みのオブジェクトや配列を書き換えるときの注意点 - Qiita

    はじめに vue.jsでバインディング済みオブジェクトや配列を書き換える際に,(ビューに反映させるために)状況によってはvue.jsが用意する拡張メソッドを利用する必要があります。 結論としては「Object.$addなりArray.$setなり使えよ」ということになるのですが,どういうケースでこれらのメソッドを呼ぶ必要があるのかが(わたしのような)初心者にはすぐに理解できなかったので,サンプルを交えつつ紹介したいと思います。 前提コード まず次のようなコードを考えます。 <script src="//cdnjs.cloudflare.com/ajax/libs/vue/0.11.0/vue.min.js"></script> <div id="container"> <div> 0: {{array[0].name}}, {{array[0].prop}} </div> <div v-r

    vue.jsでバインディング済みのオブジェクトや配列を書き換えるときの注意点 - Qiita
    koba789
    koba789 2014/11/22
    getter/setter でフックしてる限りこうなる