使用Jquery从Json返回数据中删除双引号

Ale*_*lex 39 javascript jquery

我使用JQuery来获取Json数据,但它显示的数据有双引号.它有删除它的功能吗?

$('div#ListingData').text(JSON.stringify(data.data.items[0].links[1].caption))
Run Code Online (Sandbox Code Playgroud)

它返回:

"House"
Run Code Online (Sandbox Code Playgroud)

如何删除双引号?干杯.

McG*_*gle 62

用途replace:

var test = "\"House\"";
console.log(test);
console.log(test.replace(/\"/g, ""));  

// "House"
// House
Run Code Online (Sandbox Code Playgroud)

注意g最后意味着"全局"(全部替换).

  • 正则表达式虽然有效,但会导致大量内存浪费。我认为用户要么不使用 JSON.stringify(),要么如果它是一个只是句子的 JSON 响应,则使用 JSON.parse()。当事情规模扩大时,这些正则表达式就会增加。只是说。 (2认同)
  • 不修剪开始/结束引号。它去除所有引号。 (2认同)

Sco*_*and 16

当您知道您的数据时,如果您需要利基需求......这样可行:

JSON.parse(this_is_double_quoted);

JSON.parse("House");  // for example
Run Code Online (Sandbox Code Playgroud)


kil*_*yte 7

这里有人建议使用eval()从字符串中删除引号。不要这样做,那只是乞求代码注入。

我在这里没有看到的另一种方法是使用:

let message = JSON.stringify(your_json_here); // "Hello World"
console.log(JSON.parse(message))              // Hello World
Run Code Online (Sandbox Code Playgroud)


Guf*_*ffa 6

stringfy方法不是用于解析JSON,而是用于将对象转换为JSON字符串.

JQuery在加载时由jQuery解析,您无需解析数据即可使用它.只需在数据中使用字符串:

$('div#ListingData').text(data.data.items[0].links[1].caption);
Run Code Online (Sandbox Code Playgroud)