2014-02-12 61 views
0

我在嘗試從一個處理Google Chrome應用程序中的indexDB命令的開源項目中瞭解一些代碼。Google Chrome Indexdb - 冗餘代碼

的代碼如下:

 var db = pm.indexedDB.db; 
     var trans = db.transaction([pm.indexedDB.TABLE_DRIVE_CHANGES], "readwrite"); 
     var store = trans.objectStore(pm.indexedDB.TABLE_DRIVE_CHANGES); 

     var boundKeyRange = IDBKeyRange.only(driveChange.id); 
     var request = store.put(driveChange); 

     request.onsuccess = function (e) { 
      callback(driveChange); 
     }; 

     request.onerror = function (e) { 
      console.log(e.value); 
     }; 

雖然應用的工作原理,對我來說,似乎下面一行是多餘的代碼

 var boundKeyRange = IDBKeyRange.only(driveChange.id); 

還是我失去了一些東西?變量'boundKeyRange'在任何地方都不會被引用。

回答

0

除非boundKeyRange稍後使用,你不會錯過什麼。 IDBKeyRange.only只是創建一個IDBKeyRange對象,並且如果該對象在某些IndexedDB請求中未使用,則它絕對不會執行任何操作。