内容简介:Mass update certain key-values recursively in huge, complex JSON string trees without using JSON.parse() & self-calling function.Zero dependency, 7KB
json-knife
Overview
Mass update certain key-values recursively in huge, complex JSON string trees without using JSON.parse() & self-calling function.
Zero dependency, 7KB
Installation
For ES5 users,
<html> <body> <script src="../dist/json-knife.bundle.js"></script> <script type="text/javascript"> </script> </body> </html>
For ES6 npm users, do 'npm install --save json-knife' on console.
import Pattern from 'json-knife';
Syntax & Usage
Very simple to use. Now we are going to set all 'Mike{[Gentleman]}' to null in the sample JSON string.
/** * @brief * Mass Update certain key-values recursively in huge, complex JSON string trees * @author Andrew Kang * @param original string required (must be JSON string) * @param key string required * @param value string or boolean or number or null required * @return string */ // IMPORTANT : the variable 'original' should be valid JSON. // You can test your JSON string source like here. // https://jsonformatter.curiousconcept.com/ var result = Pattern.sculptJson(original, 'Mike{[Gentleman]}', null); // You can convert the result string to an object type. var resultObj = JSON.parse(result);
[Original source]
var original =
{ "prob\"lems": [{ "classes": [{ "medications": [{ "medicationsClasses": [{ "Mike {[Gentleman]}": [{ "associatedDrug": [{ "name": "asprin", "dose": 35.3, "strength": "500 mg", "className" : false }], "Mike {[Gentleman]}": [{ "name": "somethingElse", "dose": "", "strength": "500 mg", "friends": { "self": { "Mike {[Gentleman]}": "33", "names": ["aa"] } } }] }], "Judy": [{ "associatedDrug": [{ "name": "asprin", "dose": "", "strength": "500 mg", "friends": ["Mike {[Gentleman]}"] }], "associatedDrug#2": [{ "name": "somethingElse", "dose": "", "strength": "500 mg" }], "friends": [{"Mike {[Gentleman]}": null}, {"Mike {[Gentleman]}": [["c[ 3\"5ool", 35], ["ca],[1\"3lm"], 53]}, "Jackson", "Mike {[Gentleman]}"] }] }] }], "classNameMissed": [{ "Mike {[Gentleman]}": "missing_value" }] }], "className": [{}] }] }
[Result]- string type
{ "prob\"lems": [{ "classes": [{ "medications": [{ "medicationsClasses": [{ "Mike {[Gentleman]}": null, "Judy": [{ "associatedDrug": [{ "name": "asprin", "dose": "", "strength": "500 mg", "friends": ["Mike {[Gentleman]}"] }], "associatedDrug#2": [{ "name": "somethingElse", "dose": "", "strength": "500 mg" }], "friends": [{"Mike {[Gentleman]}": null}, {"Mike {[Gentleman]}": null}, "Jackson", "Mike {[Gentleman]}"] }] }] }], "classNameMissed": [{ "Mike {[Gentleman]}": null }] }], "className": [{}] }] }
Please inform me of the source related things by leaving issues on Github or emailing me at studypurpose@naver.com .
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
ACM/ICPC程序设计与分析
沈云付 / 清华大学 / 2010-7 / 39.50元
《ACM/ICPC程序设计与分析(C++实现)》介绍ACM国际大学生程序设计竞赛概况及程序设计基础,系统介绍数论、组合数学、动态规划、计算几何、搜索、图论和网络流等专题的典型算法,挑选历年竞赛中许多有代表性的竞赛题作为例题进行分析,便于学生编程时模仿学习。每章的例题和习题都配有输入输出样例,方便学生在编程时测试与调试程序。《ACM/ICPC程序设计与分析(C++实现)》以C++为程序设计语言,以提......一起来看看 《ACM/ICPC程序设计与分析》 这本书的介绍吧!