你有没有注意到Javascript对象的字面量看起来很像一个数据库表?
[ {"id":1,"gender":"M","first":"John","last":"Smith","city":"Seattle, WA","status":"Active"}, {"id":2,"gender":"F","first":"Kelly","last":"Ruth","city":"Dallas, TX","status":"Active"}, {"id":3,"gender":"M","first":"Jeff","last":"Stevenson","city":"Washington, D.C.","status":"Active"}, {"id":4,"gender":"F","first":"Jennifer","last":"Gill","city":"Seattle, WA","status":"Active"} ]
TaffyDB是一个Javascript库,它提供了强大的数据库功能,大大改善了你在Javascript中使用数据的方式。
创建一个数据库
// Create DB and fill it with records var friends = TAFFY([ {"id":1,"gender":"M","first":"John","last":"Smith","city":"Seattle, WA","status":"Active"}, {"id":2,"gender":"F","first":"Kelly","last":"Ruth","city":"Dallas, TX","status":"Active"}, {"id":3,"gender":"M","first":"Jeff","last":"Stevenson","city":"Washington, D.C.","status":"Active"}, {"id":4,"gender":"F","first":"Jennifer","last":"Gill","city":"Seattle, WA","status":"Active"} ]);
使用字段名或者字段的关系过滤
// Find all the friends in Seattle friends({city:"Seattle, WA"}); // Find John Smith, by ID friends({id:1}); // Find John Smith, by Name friends({first:"John",last:"Smith"});
很容易访问数据
// Kelly's record var kelly = friends({id:2}).first(); // Kelly's last name var kellyslastname = kelly.last; // Get an array of record ids var cities = friends().select("id"); // Get an array of distinct cities var cities = friends().distinct("city"); // Apply a function to all the male friends friends({gender:"M"}).each(function (r) { alert(r.name + "!"); });
快速地修改数据
// Move John Smith to Las Vegas friends({first:"John",last:"Smith"}).update({city:"Las Vegas, NV:"}); // Remove Jennifer Gill as a friend friends({id:4}).remove(); // insert a new friend friends.insert({"id":5,"gender":"F","first":"Jennifer","last":"Gill","city":"Seattle, WA","status":"Active"});