热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

javascript通过拼接从json数据里获取特定内容

1.这是我的json字符串

1.这是我的json字符串



{

1
2
3
4
5
6
7
8
9
10
11
12
13
14
"综合指数分析":

    {    "预测分析":

        {    "预测模型":"1111111111111111",

            "预测值":"2222222",

            "预测指数图":"33333"

        },

        "综合系统预警图":"44444444",

        "指标权值":"5555",

        "趋势图":"0000000000",

        "隶属度":"9999999",

        "指标标准":"8888",

        "指标预警图":"7777777",

        子系统预警图":"6666"

    }

}



2.我的需求
通过类似 jsonStr"综合指数分析"["预测模型"] 获取json字符串中的数字串,由于我想动态获取jsonStr中的内容,比如需要"趋势图"的“0000000000”时就拼接出
jsonStr["综合指数分析"]["趋势图"].

3.我的代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
function getMenuContent(jsonStr){

    $(".folder").each(function(){

        $(this).click(function(){

            var arr=new Array();//保存父级元素文本内容

            var txt=$(this).text();//点击元素文本内容

            var rbleft=$("#right-bottom-left");            

            var parentEls=$("span:contains("+txt+")").parents().filter("li").map(function(){

                if(this.tagName=="LI"){//this.tagName=="UL"||"LI"

                    var obj=$(this).children("span").first().clone();

                    console.log(obj.html());//输出父级元素的文本内容

                    arr.push(obj.html());

                    return this.tagName;

                }

            })

            var cOntent=getJsonStr(arr);

            console.log("jsonStr"+content+"");

            rbleft.text(jsonStr+""+content+"");// 如何通过拼接实现动态获取jsonStr的内容?????

            return arr;

        })

    })

}





//拼接获取json字符串的表达式,像jsonStr["综合指数分析"]["预测分析"]

function getJsonStr(arr){

    var str="";//存储获取json字符串的表达式

    for(var i=0;i
        str+='["'+arr[i]+'"]';

    }

    return str;

}





4.如同3中有一行注释有5个问号,请问如何解决这个需求?

我需要做成比递归遍历更加灵活的操作,就是比如需要哪个数据直接就是哪个数据。

我是把json数据做成了菜单,点击菜单就直接获取那个菜单的数据。比如点击"预测值",

然后就从json数据里拿到"预测值"的"2222222"。我一直认为要从json里拿到

"预测值"的"2222222",需要先知道"预测值"的父级"预测分析"和"综合指数分析",

然后通过jsonStr["综合指数分析"]["预测分析"]["预测值"]获取到数据"2222222"。

请问这个思路对吗?有更好的思路吗?



   



推荐阅读
  • 本文介绍了在wepy中运用小顺序页面受权的计划,包含了用户点击作废后的从新受权计划。 ... [详细]
  • 使用nodejs爬取b站番剧数据,计算最佳追番推荐
    本文介绍了如何使用nodejs爬取b站番剧数据,并通过计算得出最佳追番推荐。通过调用相关接口获取番剧数据和评分数据,以及使用相应的算法进行计算。该方法可以帮助用户找到适合自己的番剧进行观看。 ... [详细]
  • 本文介绍了闭包的定义和运转机制,重点解释了闭包如何能够接触外部函数的作用域中的变量。通过词法作用域的查找规则,闭包可以访问外部函数的作用域。同时还提到了闭包的作用和影响。 ... [详细]
  • 本文分享了一个关于在C#中使用异步代码的问题,作者在控制台中运行时代码正常工作,但在Windows窗体中却无法正常工作。作者尝试搜索局域网上的主机,但在窗体中计数器没有减少。文章提供了相关的代码和解决思路。 ... [详细]
  • 本文介绍了Java工具类库Hutool,该工具包封装了对文件、流、加密解密、转码、正则、线程、XML等JDK方法的封装,并提供了各种Util工具类。同时,还介绍了Hutool的组件,包括动态代理、布隆过滤、缓存、定时任务等功能。该工具包可以简化Java代码,提高开发效率。 ... [详细]
  • Voicewo在线语音识别转换jQuery插件的特点和示例
    本文介绍了一款名为Voicewo的在线语音识别转换jQuery插件,该插件具有快速、架构、风格、扩展和兼容等特点,适合在互联网应用中使用。同时还提供了一个快速示例供开发人员参考。 ... [详细]
  • 本文介绍了作者在开发过程中遇到的问题,即播放框架内容安全策略设置不起作用的错误。作者通过使用编译时依赖注入的方式解决了这个问题,并分享了解决方案。文章详细描述了问题的出现情况、错误输出内容以及解决方案的具体步骤。如果你也遇到了类似的问题,本文可能对你有一定的参考价值。 ... [详细]
  • 本文讨论了在openwrt-17.01版本中,mt7628设备上初始化启动时eth0的mac地址总是随机生成的问题。每次随机生成的eth0的mac地址都会写到/sys/class/net/eth0/address目录下,而openwrt-17.01原版的SDK会根据随机生成的eth0的mac地址再生成eth0.1、eth0.2等,生成后的mac地址会保存在/etc/config/network下。 ... [详细]
  • 第四章高阶函数(参数传递、高阶函数、lambda表达式)(python进阶)的讲解和应用
    本文主要讲解了第四章高阶函数(参数传递、高阶函数、lambda表达式)的相关知识,包括函数参数传递机制和赋值机制、引用传递的概念和应用、默认参数的定义和使用等内容。同时介绍了高阶函数和lambda表达式的概念,并给出了一些实例代码进行演示。对于想要进一步提升python编程能力的读者来说,本文将是一个不错的学习资料。 ... [详细]
  • 在编写业务代码时,常常会遇到复杂的业务逻辑导致代码冗长混乱的情况。为了解决这个问题,可以利用中间件模式来简化代码逻辑。中间件模式可以帮助我们更好地设计架构和代码,提高代码质量。本文介绍了中间件模式的基本概念和用法。 ... [详细]
  • 模板引擎StringTemplate的使用方法和特点
    本文介绍了模板引擎StringTemplate的使用方法和特点,包括强制Model和View的分离、Lazy-Evaluation、Recursive enable等。同时,还介绍了StringTemplate语法中的属性和普通字符的使用方法,并提供了向模板填充属性的示例代码。 ... [详细]
  • SpringMVC接收请求参数的方式总结
    本文总结了在SpringMVC开发中处理控制器参数的各种方式,包括处理使用@RequestParam注解的参数、MultipartFile类型参数和Simple类型参数的RequestParamMethodArgumentResolver,处理@RequestBody注解的参数的RequestResponseBodyMethodProcessor,以及PathVariableMapMethodArgumentResol等子类。 ... [详细]
  • 本文讨论了编写可保护的代码的重要性,包括提高代码的可读性、可调试性和直观性。同时介绍了优化代码的方法,如代码格式化、解释函数和提炼函数等。还提到了一些常见的坏代码味道,如不规范的命名、重复代码、过长的函数和参数列表等。最后,介绍了如何处理数据泥团和进行函数重构,以提高代码质量和可维护性。 ... [详细]
  • 本文介绍了如何使用jQuery和AJAX来实现动态更新两个div的方法。通过调用PHP文件并返回JSON字符串,可以将不同的文本分别插入到两个div中,从而实现页面的动态更新。 ... [详细]
  • 单页面应用 VS 多页面应用的区别和适用场景
    本文主要介绍了单页面应用(SPA)和多页面应用(MPA)的区别和适用场景。单页面应用只有一个主页面,所有内容都包含在主页面中,页面切换快但需要做相关的调优;多页面应用有多个独立的页面,每个页面都要加载相关资源,页面切换慢但适用于对SEO要求较高的应用。文章还提到了两者在资源加载、过渡动画、路由模式和数据传递方面的差异。 ... [详细]
author-avatar
大航
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有