我有一个300个数组(随机生成)的JSON文件,我试图通过HTML搜索输入进行搜索。结构如下:
{"username":"eshawh","first_name":"Elizabeth","last_name":"Shaw","gender":"Female","sexuality":"Proactive background hierarchy","language":"Nepali"},
{"username":"tromeroi","first_name":"Terry","last_name":"Romero","email":"tromeroi@amazon.co.jp","gender":"Male","sexuality":"Persistent intermediate structure","language":"Swati"},
等
2个问题:
到目前为止,我有这个让我知道自己应该走向何方。
user=users.find(el=>el.name=="Jack");
for(key in user){
alert(key+":"+user[key]);
}
然而,它使用了一些我不熟悉的术语。有更简单的方法吗?
UPDATED 它无法访问服务器,因为该页面是游戏的一部分,该游戏运行在编译本地HTML页面的专用C#浏览器上。它旨在脱机播放。
答案 0 :(得分:1)
数目:
Javascript无法访问您的本地文件系统。这将是一个巨大的安全问题。您必须使用Web服务器(expressJS,Apache等)提供该本地文件。然后调用提供文件的URL,将数据加载到变量中,然后......对数据执行任何操作...即:通过它循环搜索您需要的内容。
我个人使用map
。即:myArrayVariable.map(function(v,k){/ code /})(更多信息请https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map)
您提供的代码段是用ES6编写的。箭头符号是识别它的快速方法。 =>
此:
el=>el.name=="Jack"
与:
相同 function(el){ return el.name == "Jack" }
UPDATED :由于您有一个C#脚本编译代码,我建议您查看特定C#编译器可用的文件系统函数。我的经验是NodeJS,我正在考虑像https://nodejs.org/api/fs.html#fs_fs_readfile_file_options_callback这样的东西,但对于C#。