Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用.filter()访问JSON密钥_Javascript_Jquery_Json_Methods_Filter - Fatal编程技术网

Javascript 如何使用.filter()访问JSON密钥

Javascript 如何使用.filter()访问JSON密钥,javascript,jquery,json,methods,filter,Javascript,Jquery,Json,Methods,Filter,如何使用.filter筛选出以下标题?我希望输出类似:{“卷尾猴”,“水豚”}我正在使用JSON,看起来像这样: { "d": { "results": [ { "__metadata": { "id": "N/A", "type": "N/A" }, "Courses": { "results": [ { "__

如何使用
.filter
筛选出以下标题?我希望输出类似:{“卷尾猴”,“水豚”}我正在使用JSON,看起来像这样:

{
  "d": {
    "results": [
      {
        "__metadata": {
          "id": "N/A",
          "type": "N/A"
        },
        "Courses": {
          "results": [
            {
              "__metadata": {
                "id": "N/A",
                "type": "N/A"
              },
              "Title": "Capuchin Monkey"
            },
            {
              "__metadata": {
                "id": "N/A",
                "type": "N/A"
              },
              "Title": "Capybara"
            },
JS代码段:
要获得标题列表,如
{“卷尾猴”、“水豚”}
,最好使用而不是

var json={
“d”:{
“结果”:[
{
“_元数据”:{
“id”:“不适用”,
“类型”:“不适用”
},
“课程”:{
“结果”:[
{
“_元数据”:{
“id”:“不适用”,
“类型”:“不适用”
},
“标题”:“卷尾猴”
},
{
“_元数据”:{
“id”:“不适用”,
“类型”:“不适用”
},
“标题”:“水豚”
}
]
}
}
]
}
}
//使用.map
trainingCrs=json.d.results[0].Courses.results.map(x=>x.Title);
控制台日志(“培训标题列表:”,培训CRS);
//使用.filter
trainingCrs=json.d.results[0]。Courses.results.filter(x=>x.Title==“水豚”);

控制台日志(“一个标题上的培训列表过滤器”,培训CRS)我想你需要的是地图,而不是过滤器。 大概是这样的:

{
  "d": {
    "results": [
      {
        "__metadata": {
          "id": "N/A",
          "type": "N/A"
        },
        "Courses": {
          "results": [
            {
              "__metadata": {
                "id": "N/A",
                "type": "N/A"
              },
              "Title": "Capuchin Monkey"
            },
            {
              "__metadata": {
                "id": "N/A",
                "type": "N/A"
              },
              "Title": "Capybara"
            },
var json={“结果”:[
{
“_元数据”:{
“id”:“不适用”,
“类型”:“不适用”
},
“课程”:{
“结果”:[
{
“_元数据”:{
“id”:“不适用”,
“类型”:“不适用”
},
“标题”:“卷尾猴”
},
{
“_元数据”:{
“id”:“不适用”,
“类型”:“不适用”
},
“标题”:“水豚”
}]}}]};
const reducedResult=json.results.reduce((act,val)=>act.concat(val));
const titles=reducedResult.Courses.results.map((value)=>value.Title);

控制台日志(标题)“过滤掉”-您的预期结果是什么?包含所有标题的数组?删除所有标题的原始对象?请将预期输出添加到您的问题中!Hi@Jitendra可能重复,当我尝试此操作时,我得到一个
“TypeError:无法在我的控制台中获取未定义或空引用的属性'results'”
。嘿,由于某些原因,我在控制台中得到一个错误:
“无法获取未定义或空引用的属性'results'”
loadCategories(){ 
        let categs = _categories,
            trainingCrs = _categories.d.results.map((x) =>x.Courses.results.Title)
            });