Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >选择篇(070)-下面代码的输出是什么?

选择篇(070)-下面代码的输出是什么?

作者头像
齐丶先丶森
发布于 2022-05-12 13:45:37
发布于 2022-05-12 13:45:37
15800
代码可运行
举报
文章被收录于专栏:前端面试秘籍前端面试秘籍
运行总次数:0
代码可运行
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
const settings = {
  username: "lydiahallie",
  level: 19,
  health: 90
};

const data = JSON.stringify(settings, ["level", "health"]);
console.log(data);
  • A: "{"level":19, "health":90}"
  • B: "{"username": "lydiahallie"}"
  • C: "["level", "health"]"
  • D: "{"username": "lydiahallie", "level":19, "health":90}"
答案: A

JSON.stringify的第二个参数是 替代者(replacer). 替代者(replacer)可以是个函数或数组,用以控制哪些值如何被转换为字符串。

如果替代者(replacer)是个 数组 ,那么就只有包含在数组中的属性将会被转化为字符串。在本例中,只有名为"level""health" 的属性被包括进来, "username"则被排除在外。 data 就等于 "{"level":19, "health":90}".

而如果替代者(replacer)是个 函数,这个函数将被对象的每个属性都调用一遍。函数返回的值会成为这个属性的值,最终体现在转化后的JSON字符串中(译者注:Chrome下,经过实验,如果所有属性均返回同一个值的时候有异常,会直接将返回值作为结果输出而不会输出JSON字符串),而如果返回值为undefined,则该属性会被排除在外。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-03-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 前端面试秘籍 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
你所不知道的JSON
JSON已经逐渐替代XML被全世界的开发者广泛使用。本文深入讲解JavaScript中使用JSON.stringify的一些细节问题。首先简单回顾一下JSON和JavaScript:
Jean
2018/10/09
1.1K0
你所不知道的JSON
送你58道JavaScript面试题(上)
之前翻译过前阵子 github很火的 javascript-questions:送你43道JavaScript面试题
ConardLi
2019/08/21
8220
送你58道JavaScript面试题(上)
【JS】411- JS 进阶系列问题(47问)
在函数内部,我们首先通过 var 关键字声明了 name 变量。这意味着变量被提升了(内存空间在创建阶段就被设置好了),直到程序运行到定义变量位置之前默认值都是 undefined。因为当我们打印 name 变量时还没有执行到定义变量的位置,因此变量的值保持为 undefined。
pingan8787
2019/11/15
2.5K0
就因为JSON.stringify,我的年终奖差点打水漂了
「产品同学」在诉苦:线上用户不能提交表单了,带来了好多客诉,估计会是p0故障,希望尽快解决。
前端胖头鱼
2022/07/24
1.3K0
就因为JSON.stringify,我的年终奖差点打水漂了
慎用 JSON.stringify
项目中遇到一个 bug,一个组件为了保留一份 JSON 对象,使用 JSON.stringify 将其转换成字符串,这样做当然是为了避免对象是引用类型造成数据源的污染。
GopalFeng
2022/11/29
5640
分享 5 个关于 JSON.stringify() 的使用场景
JSON.stringify() 方法将一个 JavaScript 对象或值转换为 JSON 字符串,如果指定了一个 replacer 函数,则可以选择性地替换值,或者指定的 replacer 是数组,则可选择性地仅包含数组指定的属性。
前端达人
2023/09/11
3130
分享 5 个关于 JSON.stringify() 的使用场景
JavaScript 进阶问题列表[每日前端夜话0x95]
来源:https://github.com/lydiahallie/javascript-questions
疯狂的技术宅
2019/07/17
1.5K0
JavaScript 进阶问题列表[每日前端夜话0x95]
手写源码系列(三)——JSON.parse和JSON.stringfy
本文首发于知乎专栏——前端面试题汇总,大家可以通过文章底部的阅读原来来访问原文地址
用户1687375
2019/07/30
2.9K0
你不知道的 JSON.stringify() 的威力
其实有很多有用的东西,当时学习了,也记住了,但是时间久了就是记不住,所以导致在日常开发中总是想不起来原来这个东西可以这么用,而去选择了更加复杂和麻烦的方式。其实我们日常学习的知识就是拿来用的,即使你今天把知识点背下来了,没有去思考这个知识点我们可以用来干嘛,不需要几天就会慢慢地忘掉。所以今天我们来了解一下在日常学习时你遗漏掉或者忘掉或者没有思考过的你不知道的 JSON.stringify() 的威力。
Nealyang
2019/12/12
9410
你不知道的 JSON.stringify() 的威力
Javascript的JSON.stringify()知多少?
前几天看到前端胖头鱼的一篇文章《就因为JSON.stringify,我的年终奖差点打水漂了》,讲的就是JSON.stringify在工程开发中的应用,线上用户不能提交表单。因为字段中经过JSON.stringify后的字符串对象缺少value key,导致后端parse之后无法正确读取value值,进而报接口系统异常,用户无法进行下一步动作。本篇文章就将详细谈谈JSON.stringify,并将带着你进行自己手写一个JSON.stringify,站在全局考察自己对于各种数据类型理解的深度,和各种极端的边界情况的处理能力。
玖柒的小窝
2021/12/11
1.4K0
Javascript的JSON.stringify()知多少?
掌握JavaScript的JSON.stringify鲜为人知的技巧,让前端开发更加高效和灵活
在日常开发中,我们经常会使用到 JSON.stringify 这个方法,特别是在需要进行序列化(深拷贝)的时候。它可以把我们的对象转换成一个 JSON 字符串,这个方法确实非常方便,但它也有一些不常被注意到的缺点。
前端达人
2024/11/25
3730
掌握JavaScript的JSON.stringify鲜为人知的技巧,让前端开发更加高效和灵活
html5 新特性
1.querySelector 返回文档中匹配指定css选择器的一个元素.     注意:uerySelector() 方法仅仅返回匹配指定选择器的第一个元素         如果你需要返回所有的元素,请使用 querySelectorAll()     语法:document.querySelector(CSS selectors) 2.getElementsByClassName() 方法返回文档中所有指定类名的元素集合     语法:document.getElementsByClassName
用户1197315
2018/01/22
2K0
JSON.stringify()和JSON.parse() 的使用总结
如果一个被序列化的对象拥有 toJSON 方法,那么 toJSON 方法后的返回值会被序列化,例如:
用户8921923
2022/10/24
1.5K0
JSON.stringify()
对于undefined、任意的函数以及symbol三个特殊的值分别作为对象属性的值、数组元素、单独的值时JSON.stringify()将返回不同的结果。
Karl Du
2020/10/23
1K0
前端 JavaScript 中 JSON.stringify() 的基本用法
在开发工作中,我们可能会碰到这样的需求:需要将某个对象内容弹窗显示或者保存在文件中,这时候如果你直接弹窗的话,很可能就是下面这样的:[image-20210629184729132]
编程三昧
2021/06/29
9460
前端 JavaScript 中 JSON.stringify() 的基本用法
JavascriptJSON
JSON是JavaScript Object Notation的缩写,它是一种基于文本的轻量级数据交换格式。它是一门独立的语言。
Andromeda
2022/10/27
1.2K0
JavascriptJSON
那些你熟悉而又陌生的函数
我们最常用的是语法中的第二种 var timeoutID = scope.setTimeout(function[, delay]); 举个例子
苏南
2021/07/29
7610
煦涵说JSON
JSON(Javascript Object Notaion, javascript 对象表示法), 是一种数据交换格式,能够在服务器端交换数据, 2001年由Douglas Crockford提出,目的是取代繁琐笨重的XML格式。
用户6256742
2024/06/27
1380
JSON 基本使用
JSON常被拿来与XML做比较,因为JSON 的诞生本来就多多少少要有取代XNL的意思。相比 XML,JSON的优势如下:
兮动人
2021/05/31
1.7K0
JSON 基本使用
JSON.parse() and JSON.stringify()
最近发现一个比较好的关于前端的英文博文网站,主要是关于Javascript、Vuejs、React、Angular、CSS的前端网站博文网站,网站地址是:https://alligator.io/,感兴趣的可以看一下,跟着学习也不错。 本文翻译自JSON.parse() and JSON.stringify() JSON对象,在所有的现代浏览器中是有效的,有两个非常有用的方法用于处理JSON格式的内容:parse和stringify。JSON.parse()接收一个JSON字符串作为参数,将它转换成一个JavaScript对象。JSON.stringify()接收一个Javascript对象作为参数,转换它为一个JSON字符串。 示例如下:
ccf19881030
2020/04/10
1.3K0
相关推荐
你所不知道的JSON
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验