[英]What Javascript library can evaluate MongoDB-like query predicates against an object?
[英]MongoDB-like JS library to store objects in client side indexedDB?
給定以下localStorage
代碼( jsfiddle ):
// my new information
var data = {character: "中", totalMistakes: 0};
var han = data.character;
// create localStorage; Unpack, update, repackage knol
/* **** THIS IS THE SECTION TO CONVERT **** */
localStorage.knol = '{}'; // create pseudo object, as string
var knol = JSON.parse(localStorage.knol)
knol[han] = data;
localStorage.knol = JSON.stringify(knol);
// Print to check if all went well.
console.log('data: ',data)
console.log('han: ',han)
console.log('knol: ',knol)
console.log('localStorage.knol: ',localStorage.knol)
console.log('localStorage.knol: ',JSON.parse(localStorage.knol))
console.log('localStorage.knol[han]: ',JSON.parse(localStorage.knol)[han])
最后, localStorage.knol
是:
{
"中": {character: "中", totalMistakes: 0}
}
我正在尋找一個類似於 Mongo 的 js 庫來在客戶端 indexedDB 上存儲數據,其語法類似於我已經熟悉的 MongoDB。
如何將上面的 localStorage 代碼轉換為類似 Mongo 的 IndexedDB 庫語法來存儲對象?
編輯:我建議使用 minimongo,但任何存儲在 indexedDB 中的類似 MongoDB 的庫都可以。
使用Dexie.js 及其 API ( jsfiddle ) :
<!-- Include dexie.js -->
<script src="https://unpkg.com/dexie@latest/dist/dexie.js"></script>
<script>
var db = new Dexie('MyDatabase');
// Define a schema
db.version(1).stores({ knol: 'character, totalMistakes' });
// Open the database
db.open().catch(function(error) { alert('Uh oh : ' + error); });
// or make a new one
db.knol.put({ character: '中', totalMistakes: 8 });
// Find some old friends
var mistakes = db.knol.where('totalMistakes');
//mistakes.above(6).each (function (item) { console.log (item); });
mistakes.aboveOrEqual(0).each (function (item) { console.log (item)});
</script>
我不推薦它,但有如何在網絡瀏覽器中使用它
(探索正在進行中https://jsfiddle.net/vb92pecv/3/ )
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.