JSON.parse() 是如何工作的?

2024-02-06

我没有在 javascript 上做太多工作。而且,我需要解析一个 JSON 字符串。所以,我想知道 JSON.parse 到底做了什么。例如 : 如果我将 json 字符串分配给这样的变量,

var ab = {"name":"abcd", "details":{"address":"pqrst", "Phone":1234567890}};

现在,当我打印“ab”时,我得到一个对象。

同样,当我这样做时:

var pq = '{"name":"abcd", "details":{"address":"pqrst", "Phone":1234567890}}';
var rs = JSON.parse(pq);

“rs”与“ab”是同一对象。那么两种方法有什么区别,JSON.parse 做了什么不同的事情呢?

这可能是一个愚蠢的问题。但如果有人能解释这一点,那将会很有帮助。

Thanks.


Javascript 对象是 Javascript 中的一种数据类型 - 它具有您在第一个示例中定义的属性和值对。

var ab = {"name":"abcd", "details":{"address":"pqrst", "Phone":1234567890}};

现在什么是 Json:JSON 字符串是一种数据交换格式 - 它只不过是一堆以特定方式格式化的字符(以便不同的程序相互通信)

var pq = '{"name":"abcd", "details":{"address":"pqrst", "Phone":1234567890}}';

所以它是一个 json 格式的字符串。

最后JSON.parse()返回与给定 JSON 文本对应的对象。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JSON.parse() 是如何工作的? 的相关文章

随机推荐

  • 使用正则表达式消除谷歌应用程序脚本中的换行符

    我正在尝试为 Google Docs 编写一个附加组件的一部分 该附加组件可以使用以下命令消除所选文本中的换行符replaceText 显而易见的text replaceText n 给出错误Invalid argument searchP
  • 从数组反应本机生成时,多个开关(切换)会同时启用

    现在我的构造函数中有一个像这样的数组 words test test test 在渲染内部 我想为每个元素生成一个带有文本和开关 切换 的元素 如下所示 const wordList this state words map item i
  • 关于Scala闭包的问题(来自《Scala编程》)

    我不明白为什么作者说 Scala 编程 中的代码清单 9 1 使用闭包 在第 9 章中 他们展示了如何将原始代码重构为更少重复的形式 object FileMatcher private def filesHere new java io
  • PHP:在输出中查找具有相对路径的图像和链接并将其转换为绝对路径

    有很多关于 PHP 中相对路径与绝对路径转换的帖子 我正在寻找这些帖子之外的具体实现 希望如此 有人可以帮我完成这个具体的实施吗 我有一个包含不同 HTML 的 PHP 变量 包括hrefs and imgs 包含相对 url 大部分 例如
  • 重新连接时 iPhone 无法发现蓝牙 LE 标签上的服务

    我正在开发适用于 iOS 的蓝牙 LE 应用程序 我使用 iOS 中的核心蓝牙框架来处理所有通信 问题及描述 当我使用单个标签时 尽管有多次连接和断开连接 单个标签仍可以无缝连接 并且手机会发现它的服务 此外 当多个蓝牙 LE 标签首次连接
  • ASP.NET MVC 更新一个表单上的对象列表? (模型绑定到列表)

    关于更新 ASP NET MVC 中的项目列表的快速问题 基本上我有一个编辑操作方法 它返回对象的集合 顺便说一句 其表结构如下所示 testID assetID Result 链接表 我基本上希望这些项目在表单中一个接一个地显示 并且能够
  • 无法停止使用 ExecutorService 启动的任务

    抱歉 我必须打开一个新线程来描述这个问题 今天早上我问这个问题 https stackoverflow com questions 8632773 how to stop immediately a task which is starte
  • Flutter BLoC 测试失败

    目前正在尝试对我的肘节实施单元测试 我感觉严重缺乏 BLoC 在线测试文档或有用的示例 谁能解释一下我在设置这个测试时做错了什么 我似乎无法弄清楚问题是什么 如果有人能告诉我我能做些什么来解决这个问题 我将不胜感激 设置状态文件 class
  • Android DownloadManager 保存到 Download 文件夹

    我正在使用 DownloadManager 来下载文件 我想将下载内容放在标准下载文件夹中 以便人们可以使用文件管理器在最明显的位置轻松找到它们 Uri downloadLocation Uri fromFile new File Envi
  • 如何实现中值堆

    与最大堆和最小堆一样 我想实现中值堆来跟踪给定整数集的中值 API应具有以下三个功能 insert int should take O logN int median will be the topmost element of the h
  • Angular2 路由。请求的路径在索引 1 处包含未定义的段

    我在 Angular 2 中遇到路由问题 我从操作调用 router navigate 到数据表 罕见的是 有时当我单击调用该行的按钮时 它可以正常工作 有时却不能 this router navigate edit id relative
  • 在selenium问题中打开chrome

    我目前正在参加我的第一个自动化测试课程 讲师让我们在加载 Selenium 后在 Eclipse 中创建一个程序 并在程序中创建一个步骤来查看可执行文件以启动 chrome 然后指定一个网站进行检查 看起来我陷入了循环 这是程序 java程
  • 使用 r 删除希伯来语“niqqud”

    一直在努力去除niqqud https en wikipedia org wiki Niqqud 用于表示元音或区分希伯来字母表字母的替代发音的变音符号 例如我有这个变量 样本1 我找不到有效的方法来删除字母下面的标志 尝试过纵梁 与str
  • 从 Web 开发学习 Objective C (Cocoa) 进行 iPhone 编程?

    我想学习开发 iPhone 应用程序 我在 HTML CSS 和 PHP 方面拥有丰富的经验 我也了解一些 JavaScript 我应该从哪里开始 我已经下载了带有 XCode 的 SDK 等等 我是不是有点超前了 我真的不知道 有教程或者
  • 谷歌应用脚​​本,团队驱动的谷歌选择器

    221 5000 你好 目前我正在尝试为谷歌团队驱动器实现谷歌pikker 此代码适用于我的 Google 云端硬盘 但如果您将此代码用于 Google Team Drives 请添加参数 enableFeature google pick
  • 将字符串拆分为行 Oracle SQL

    在搜索论坛后 我想出了以下内容 但它不起作用 我有一张桌子 上面有以下内容 ID Strings 123 abc fgh dwd 243 dfs dfd dfg 353 dfs 424 dfd dfw 523 请注意 大约有 20 000
  • 如何对顺序逻辑进行单元测试?

    假设我有具有以下方法的 Car 类 装载汽油 I燃油气 InsertKey IKey键 启动引擎 IDriverSession Go Car 的目的是配置并返回 IDriverSession 应用程序的其余部分使用该 IDrivingSes
  • 在我的主机上运行 python 脚本

    我是 Web 开发和 Python 的新手 由于我没有足够的词汇来提出确切的问题 这里总结了需要做什么 我有一个小的测试 python cgi 脚本 我已将其上传到 home username pyscripts 位于上面 home 用户名
  • Java 7 中的 emma 和 junit 导致 java.lang.VerifyError 和非法局部变量错误

    所以我收到这些错误 junit 方法 test nz ac massey cs sdc log4jassignment s06005586 AppenderLayoutTest V 中非法局部变量表长度 17 junit java lang
  • JSON.parse() 是如何工作的?

    我没有在 javascript 上做太多工作 而且 我需要解析一个 JSON 字符串 所以 我想知道 JSON parse 到底做了什么 例如 如果我将 json 字符串分配给这样的变量 var ab name abcd details a