59

私はjs binにこのコードを持っています:

var validator = {
  set (target, key, value) {
    console.log(target);
    console.log(key);
    console.log(value);
    if(isObject(target[key])){

    }
    return true
  }
}


var person = {
      firstName: "alfred",
      lastName: "john",
      inner: {
        salary: 8250,
        Proffesion: ".NET Developer"
      }
}
var proxy = new Proxy(person, validator)
proxy.inner.salary = 'foo'

私がproxy.inner.salary = 555;それをしてもうまくいきません。

ただしproxy.firstName = "Anne"、そうすると、うまく機能します。

再帰的に機能しない理由がわかりません。

http://jsbin.com/dinerotiwe/edit?html,js,console

4

5 に答える 5