Javascript 无法获取本地存储值
我的职能是Javascript 无法获取本地存储值,javascript,web,local-storage,Javascript,Web,Local Storage,我的职能是 var map = function(doc) { if(doc.type=='task'){ if ( doc.admin == localStorage.Mobile_No ) emit(doc.task_creation_time, doc); } } log(map)应该像 function(doc) { if(doc.type=='task'){ if ( doc.admin == "1234567890" ) emit(doc.
var map = function(doc) {
if(doc.type=='task'){
if ( doc.admin == localStorage.Mobile_No )
emit(doc.task_creation_time, doc);
}
}
log(map)应该像
function(doc) {
if(doc.type=='task'){
if ( doc.admin == "1234567890" )
emit(doc.task_creation_time, doc);
}
}
如果你这样做的话:
var map = new Function("doc",
"if(doc.type=='task'){" + "\n"
" if ( doc.admin == \"" + localStorage.Mobile_No + "\")" + "\n"
" emit(doc.task_creation_time, doc);" + "\n"
" }" + "\n"
"}");
你可以实现你似乎在寻找的目标。但看在上帝的份上,为什么
JS引擎不会仅仅因为在localStorage中找到值就神奇地重写源代码。如果更改该值,会发生什么情况?该功能是否会突然自我更新?欢迎使用。此函数的作用是什么,以及
doc
的典型值是什么?仅从这一点,很难理解到底是什么问题。代码的哪一部分不起作用?您确定doc
的值是您认为的值吗?你确定localStorage.Mobile\u No
的价值是你认为的吗?你怎么说你无法获得localStorage的价值。尝试检查chrome或safari的webinspector工具中的值。你可能会有一个想法。为什么不通过闭包而不是有效的评估来实现呢?哦,我会的。但是,console.log(map)
不会返回OP想要的方式。我看不出有什么理由这么做,我认为OP是在制造一些可能不是木头做的东西,但这似乎符合要求。var-map=(function(num){return function(doc){if(doc.type=='task'&&doc.admin==num)emit(doc.task\u creation\u time,doc)}(localStorage.Mobile\u no))
,但是是的,console.log
看起来会有所不同。是的,编写一个具有正确功能的控制台很简单,但是它将如何出现在控制台中,这就是问题所问的?