Javascript 下划线对象,函数获取数据的特定部分?
使用下面的数据对象,我试图编写一个函数,它接受一个名称(名称是来自数据的标签,如本例中的“GD”)和值。我想使用我在下面用下划线写的函数,但我很难弄清楚如何写出这段代码,因为我对JS基本上是新手。关于如何修改函数Javascript 下划线对象,函数获取数据的特定部分?,javascript,underscore.js,Javascript,Underscore.js,使用下面的数据对象,我试图编写一个函数,它接受一个名称(名称是来自数据的标签,如本例中的“GD”)和值。我想使用我在下面用下划线写的函数,但我很难弄清楚如何写出这段代码,因为我对JS基本上是新手。关于如何修改函数getOption()的任何输入 根据文件, \uu.findWhere(列表,属性) 浏览列表并 返回与列出的所有键值对匹配的第一个值 在属性中 若找不到匹配项,或者列表为空,则返回undefined .findWhere(公共服务普利策,{新闻编辑室:《纽约时报》); =>{年份:1
getOption()
的任何输入
根据文件,
\uu.findWhere(列表,属性)
浏览列表并
返回与列出的所有键值对匹配的第一个值
在属性中
若找不到匹配项,或者列表为空,则返回undefined
.findWhere(公共服务普利策,{新闻编辑室:《纽约时报》);
=>{年份:1918年,编辑室:《纽约时报》,理由:“为其公共服务,全文出版了这么多官方报告,欧洲政治家关于进展的文件和讲话 以及战争的进行。”} 看起来您必须指定属性名称和属性值。在本例中,分别为“标签”和“GD” 试试这个:
var data = [{},{},
{
field:"ran",
indexable:true,
label:"R",
options: [
{},{},
{
category_value:"200",
label:"GD"
},{},{} // why so many initalized empty arrays?
]
},{}
]
function getOption (name, value) {
return _.findWhere(data.options, {label: "GD"}); // returns the whole array
// try var result = _.findWhere(data.options, {label: "GD"});
// then return result.category_value;
}
只是推荐了下面的url到一些相关的帖子。它可能对您有用,并且不使用额外的库:如果有多个标签具有相同的名称怎么办?@sandepnayak这是我想用这个函数解释的问题,我很难弄清楚。任何输入?
。仅获取第一个匹配项,而不获取后续匹配项。此问题解决了吗?如果没有,你能把问题简单一点吗?可能只是列出包含2-3项的输入和您想要的输出。数据对象内部将有多个标签,是否可以使用更动态的内容重新编写代码的{label:“GD”}
部分?因为它可以接受任何名称,每个名称都有自己的标签。function-getOption(name,value){return\uu.findWhere(data.options,{name:value});}
。这应该与格式getOption(“label”、“GD”)并行工作。测试的风险由您自己承担(因为我确信这个测试存在语法问题)。我用相同的标签和值为多个结果设置了第二个运动。还有一个“where”函数返回所有值。
var data = [{},{},
{
field:"ran",
indexable:true,
label:"R",
options: [
{},{},
{
category_value:"200",
label:"GD"
},{},{} // why so many initalized empty arrays?
]
},{}
]
function getOption (name, value) {
return _.findWhere(data.options, {label: "GD"}); // returns the whole array
// try var result = _.findWhere(data.options, {label: "GD"});
// then return result.category_value;
}