observe.js - 用于觀察任意對象的任意變化的類庫,以輕巧、實用、強大而聞名

jopen 9年前發布 | 14K 次閱讀 JavaScript開發 observe.js

用于觀察任意對象的任意變化的類庫,以輕巧、實用、強大而聞名。

3分鐘精通observe.js

對象字面量

var obj = { a: 1 };
//watch obj
observe(obj, function (name, value) {
    console.log(name + "__" + value);//a__2 
});
obj.a = 2;

數組

var arr = [1, 2, 3];
//watch obj
observe(arr, function (name, value, old) {
    console.log(name + "__" + value+"__"+old);
});
arr.push(4);//array__push_4 
arr[3] = 5;//3__5_4

復雜對象

var complexObj = { a: 1, b: 2, c: [{ d: [4] }] };
//watch complexObj
observe(complexObj, function (name, value) {
    console.log(name + "__" + value);    //d__100 
});
complexObj.c[0].d = 100;

普通對象

var User = function (name, age) {
    this.name = name;
    this.age = age;
    //只監聽name
    observe(this,["name"] function (name, value, oldValue) {
        console.log(name + "__" + value + "__" + oldValue);//name__wangwu__lisi 
    });
}
var user = new User("lisi", 25);
user.name = "wangwu";

項目主頁:http://www.baiduhome.net/lib/view/home/1431172249101


 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!