Javascript 解析外部JSON文件中未指定的对象

Javascript 解析外部JSON文件中未指定的对象,javascript,Javascript,我真的想找点东西 声明: 有一个kog.json文件(我无权访问) 它包含如下内容 {gold:"or not", mine:"or hot", Paris:"i hate one"} 这是一种未命名的物体 我需要的是获取Paris的数据并将其放在某个地方,就像一个简单的字符串方法是使用jQuery库的parseJSON一样。看到这个了吗 如果您有办法获取JSON字符串,那么这可能就是您想要的 类似于 var data = '{"gold":"or not", "mine":"or hot",

我真的想找点东西

声明: 有一个
kog.json文件
(我无权访问)

它包含如下内容

{gold:"or not",
mine:"or hot",
Paris:"i hate one"}
这是一种未命名的物体


我需要的是获取Paris的数据并将其放在某个地方,就像一个简单的
字符串

方法是使用jQuery库的parseJSON一样。看到这个了吗

如果您有办法获取JSON字符串,那么这可能就是您想要的

类似于

var data = '{"gold":"or not", "mine":"or hot", "Paris":"i hate one"}';
var object = JSON.parse(data);
console.log(object.Paris);
试试这个

首先,返回带有
数据类型:text
(text/plain)
这会将json文件中的数据作为字符串返回

 var data = '{gold:"or not",\r\nmine:"o...",\r\nParis:"i hate one"}';
现在不需要的\r\n已删除(换行符)

最后一次邪恶的评估是这样进行的

eval("var objLiteral = " + formattedData);
这样我就能得到巴黎了

console.log(objLiteral["Paris"]);
JavaScript代码片段

var url = "/WebFormsDemo/Samples/kog.json";
window.onload = function () {
    var filePath = url;
    xmlhttp = new XMLHttpRequest();
    xmlhttp.open("GET", filePath, false);
    xmlhttp.send(null);
    var data = xmlhttp.responseText;
    //removing the line breaks in your text
    var formattedData = data.replace(/\r\n/g, '');
    eval("var objLiteral = " + formattedData);
    console.log(objLiteral["Paris"]);
};
jQuery代码段

$(function () {
    $.ajax({
        url: url,
        //force to handle it as text
        dataType: "text",
        success: function (data) {
            //removing the line breaks in your text
            var formattedData = data.replace(/\r\n/g, '');
            eval("var objLiteral = " + formattedData);
            console.log(objLiteral["Paris"]);
        }
    });

});

附言:你真的应该改变“kog.json”的格式。它的JSON无效。

我没有访问JSON文件的权限。那样的话,我就不能把一切都改变得好看。
eval('var object={gold:“or not”,mine:“or hot”,Paris:“i hate one”};')可以工作,但这是一种黑客的方式。请注意,在“gold/mine/Paris”上没有引号,它不工作,没有引号,此外,我必须导入文件。好的,我想你只是忘记了它们,因为你说了“像这样的东西”谢谢,很多。正如我所说的,我没有访问该文件的权限:D有点。。。完全
var url = "/WebFormsDemo/Samples/kog.json";
window.onload = function () {
    var filePath = url;
    xmlhttp = new XMLHttpRequest();
    xmlhttp.open("GET", filePath, false);
    xmlhttp.send(null);
    var data = xmlhttp.responseText;
    //removing the line breaks in your text
    var formattedData = data.replace(/\r\n/g, '');
    eval("var objLiteral = " + formattedData);
    console.log(objLiteral["Paris"]);
};
$(function () {
    $.ajax({
        url: url,
        //force to handle it as text
        dataType: "text",
        success: function (data) {
            //removing the line breaks in your text
            var formattedData = data.replace(/\r\n/g, '');
            eval("var objLiteral = " + formattedData);
            console.log(objLiteral["Paris"]);
        }
    });

});