0.4.0 • Published 9 years ago
observer.js v0.4.0
##observer.js
用于观察任意对象的任意变化的类库。 支持 ES7 Object.observe, IE 6 7 8
对象字面量
var obj = { a: 1 };
observer.on(obj, function (name, value , old) {
console.log(name + "__" + value + "__" + old);
});
obj.a = 2; //a__2__1
数组
var arr = [1, 2, 3];
observer.on(arr, function(name, value, old) {
console.log(name + "__" + value + "__" + old);
});
arr.push(4); //Array-push__[1,2,3,4]__[1,2,3]
arr[2] = 5; //2__5__3 length__4__3
复杂对象
var complexObj = {
a: 1,
b: 2,
c: [{
d: [4]
}]
};
observer.on(complexObj, 'c[0].d', function(name, value, old) {
console.log(name + "__" + value + "__" + old);
});
complexObj.c[0].d = 100; //c[0].d__100__4
普通对象
var User = function(name, age) {
this.name = name;
this.age = age;
//只监听name
observer.on(this, ["name"], function(name, value, oldValue) {
console.log(name + "__" + value + "__" + oldValue);
});
}
var user = new User("lisi", 25);
user.name = "wangwu"; //name__wangwu__lisi
user.age = 20; //nothing,no listener
This content is released under the (http://opensource.org/licenses/MIT) MIT License.
0.4.0
9 years ago
0.3.6
9 years ago
0.3.5
9 years ago
0.3.4
9 years ago
0.3.3
9 years ago
0.3.2
9 years ago
0.3.1
9 years ago
0.3.0
9 years ago
0.2.7
9 years ago
0.2.6
9 years ago
0.2.5
9 years ago
0.2.4
9 years ago
0.2.3
9 years ago
0.2.2
9 years ago
0.2.1
9 years ago
0.2.0
9 years ago
0.1.5
9 years ago
0.1.4
9 years ago
0.1.3
9 years ago
0.1.2
9 years ago
0.1.1
9 years ago
0.1.0
9 years ago
0.0.12
9 years ago
0.0.11
9 years ago
0.0.10
9 years ago
0.0.9
10 years ago
0.0.8
10 years ago
0.0.7
10 years ago
0.0.6
10 years ago
0.0.5
10 years ago
0.0.4
10 years ago
0.0.3
10 years ago
0.0.2
10 years ago
0.0.1
10 years ago