当前位置: 首页 > 面试题库 >

带有引号的JSON.parse字符串

景靖琪
2023-03-14
问题内容

我有这个:

JSON.parse('{"130.00000001":{"p_cod":"130.00000001","value":"130.00000001 HDD Upgrade to 2x 250GB HDD 2.5\" SATA2 7200rpm"}}');

JSONLint表示这是完全有效的json。但是执行时出现JSON.parse错误。

但是,如果我将代码更改为:

    JSON.parse('{"130.00000001":{"p_cod":"130.00000001","value":"130.00000001 HDD Upgrade to 2x 250GB HDD 2.5\\" SATA2 7200rpm"}}');

(请注意双反斜杠)

它可以工作,但是现在JSONLint表示invalid json

有人可以帮助您了解这种行为吗?


问题答案:

有线格式和您必须在代码中编写的格式之间是有区别的。当您在代码中声明此代码时,您需要在文字中使用双-\,以便字符串获得一个反斜杠(否则,它将\\解释为一个转义序列,仅声明一个“并将其放入您的字符串中)。如果打印出文字的值,则会看到一个反斜杠。



 类似资料:
  • 我想打印如下内容: abc、def、ghi、JKL、mno、pqr 我刚写的时候: 所以我试着: 这给了我: abc、def、ghi、jkl、mno、pqr

  • 我在解析antlr4中的格式行列表时遇到了一个问题 但这是失败的第一个字符识别'*'本身,这使我困惑。 第1行:0不匹配的输入'*这是一个字符串',应为'*'

  • 问题内容: 我正在使用jQuery的$ .post调用,它返回的字符串带有引号。引号由json_encode行添加。如何停止添加引号?我的$ .post通话中是否缺少某些内容? 问题答案: 返回一个字符串。从文档中: 你需要调用上,这将解析JSON字符串,并把它变成一个对象: 但是,由于在调用中将字符串连接到,将记录的是,它将返回对象的字符串表示形式。因此,您将要登录一个单独的呼叫。像这样:

  • 我面临一个挑战,要以以下格式匹配输入: 输入由key=value对组成。关键字以斜杠开头。值可以是数字或引号中的字符串。 该值可以选择性地包含转义引号,即引号后面跟着引号(“”)。这种转义引号应该被视为价值的一部分。不需要检查转义引号是否平衡(例如,由另一个转义引号结束)。 正则表达式应该匹配序列中给定的key=value部分,并且对于长输入(例如value是10000个字符)不应该中断。

  • 问题内容: 我想用定界符空格分割字符串。但它应该智能地处理带引号的字符串。例如,像这样的字符串 它应该返回三个字符串John Smith,Ted和Barry。 问题答案: 弄乱它之后,您可以使用Regex来实现。在以下位置运行“全部匹配”的等效项: 一个Java示例: 输出: 上面使用示例的正则表达式分解可以在这里查看: http://regex101.com/r/wM6yT9 综上所述,正则表达

  • 问题内容: 我正在关注Python教程,有时他们会谈论函数的第一条语句如何成为字符串文字。就示例而言,此字符串文字似乎用三个s完成,在示例中给出 根据此文档,这将主要用于创建某种自动生成的文档。 所以我想知道这里有人可以向我解释这些字符串文字到底是什么? 问题答案: 您所说的(我认为)被称为docstrings(感谢Boud提供链接)。 现在,如果您从解释器中键入内容,您将看到我放入函数中的字符串