Javascript TypeError:对函数别名的非法调用
我一直在尝试创建JavaScript,其中包含用于管理充当文件系统的IndexedDB数据库的函数;下面的代码段有助于保护数据库不被其他客户端脚本以未经授权的方式修改,但第16行会抛出一个未捕获的“TypeError:非法调用”异常Javascript TypeError:对函数别名的非法调用,javascript,indexeddb,Javascript,Indexeddb,我一直在尝试创建JavaScript,其中包含用于管理充当文件系统的IndexedDB数据库的函数;下面的代码段有助于保护数据库不被其他客户端脚本以未经授权的方式修改,但第16行会抛出一个未捕获的“TypeError:非法调用”异常 $(文档).ready(函数(){ var-db; var proxiedDBOpen=indexedDB.open.bind(窗口); indexedDB.open=函数(名称、版本){ 如果(名称=='MyTestDatabase') { 错误('安全错误:未
$(文档).ready(函数(){
var-db;
var proxiedDBOpen=indexedDB.open.bind(窗口);
indexedDB.open=函数(名称、版本){
如果(名称=='MyTestDatabase')
{
错误('安全错误:未经授权的文件系统访问');
返回;
}
其他的
{
返回proxiedDBOpen.apply(窗口、参数);
}
}
var request=proxiedDBOpen('MyTestDatabase',4);//未捕获类型错误:非法调用
//数据库管理代码如下(使用jQuery)。。。
});
@levi的建议解决了我的问题(indexedDB.open
期望this
在其上下文中是indexedDB
。@levi的建议解决了我的问题(indexedDB.open
期望在其上下文中是indexedDB
)尝试indexedDB.open.bind(indexedb)
TryindexedDB.open.bind(indexedDB)
TryindexedDB.open.bind(indexedDB)