如何解析.json文件以匹配其文件名及其包含的根元素

时间:2016-02-18 15:01:40

标签: javascript json gulp

GulpJavaScript代码如何解析.json,如下所示,找出包含/以文件名开头的所有密钥,否则只会引发验证像“OtherName这样的消息被用作内部文件ABC”的一部分。

示例JSON:

[ABC.json]
{
                "ABC": {
                                "key1" : "Test",
                                "key2" : "Abc"
                },
                "OtherName":{
                                "key3" : "xyz"
                }
}

1 个答案:

答案 0 :(得分:1)

以下是jsfiddle的一个示例,它将向您展示如何验证某些密钥是否存在:

https://jsfiddle.net/dnozgu65/2/

<强> JavaScript的:

var filename = "ABC.json";

var json = '{"ABC": {"key1": "Test1", "key2": "Abc"}, "othername":{"key3" : "xyz"}, "test": "fff"}';

var obj  = jQuery.parseJSON( json );
$.each(obj, function(key, value) {
    if (filename.indexOf(key)>=0) {
        console.log(key);
    } else {
        document.getElementById("mydiv").innerHTML += key + " was used as a part of a key inside file " + filename  + "</br>";
    }
});

<强> HTML:

<div id="mydiv"></div>

在上面的示例中,我将filename存储在变量中,只是为了向您展示如何获取JSON keys,尽管您可以轻松地在JavaScript中检索文件名。我正在提出验证消息并分配给div,但该变量可以分配给任何其他元素。