This script tests complex keys in IndexedDB (i.e. arrays instead of simple numbers, strings, booleans). It was motivated by a SO post claiming IE doesn't support complex keys.
This test seems to confirm that indeed IE 10 and 11 do not support complex IndexedDB keys (as of January 2014).
Chrome/Opera/Firefox correctly show:
people are: [{"name":["very complex","key",1]},{"name":["very complex","key",2]},{"name":["very complex","key",3]},{"name":["very complex","key","foo"]}]
IE 11.0.9600.16438 on Win 8.1 and IE 10 .0.9200.16736 on Win 8 (brokenly) show:
got an unexpected error: {"description":"Permission denied","number":-2146828218,"stack":"Error: Permission denied\n at Anonymous function (http://192.168.0.4:8080/index.js:52:9)\n at addPersons (http://192.168.0.4:8080/index.js:46:5)"}
The "permission denied" message is a total red herring; the page works fine when using non-complex keys. You can toggle useComplexKeys
to false in the script to confirm.