Для вызова функции db.transaction()
сам по себе требуется один параметр. Этот параметр сам по себе является функцией, которую db.transaction()
будет вызывать, и когда он вызывает эту функцию, он передает ей один параметр. Имя tx
может быть любым, это просто имя для первого параметра этой функции.
Ваш код мог быть написан с помощью той функции, которую вы передаете db.transaction()
как анонимную функцию, как вы делали здесь:
db.transaction(function (tx)
{
tx.executeSql("INSERT INTO WebKitStickyNotes (id, note, timestamp, left, top, zindex) VALUES (?, ?, ?, ?, ?, ?)", [note.id, note.text, note.timestamp, note.left, note.top, note.zIndex]);
});
или это можно было бы написать так, где немного более очевидно, что происходит, но не так компактно:
function writeSql(tx) {
tx.executeSql("INSERT INTO WebKitStickyNotes (id, note, timestamp, left, top, zindex) VALUES (?, ?, ?, ?, ?, ?)", [note.id, note.text, note.timestamp, note.left, note.top, note.zIndex]);
}
db.transaction(writeSql);