一道关于JSON的问题
之前的课程都过期了,也不知道到哪问问题…所以就在这里问了。不好意思。
代码如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Interview</title>
</head>
<body>
<script>
var json = {
"name":"noc",
"age":100,
"colors":['red','yellow','blue'],
"school":function(){
console.log("我会被忽略");
}
};
console.log(JSON.stringify(json,function(key,value){
if(key === 'name'){
return undefined;
}
if(key === '1'){
// if(json.colors[key] === 'yellow'){
return undefined;
}
return value;
}));
</script>
</body>
</html>
输出结果:
{"age":100,"colors":["red",null,"blue"]}
关于if(key === '1') 这一段代码没看懂。
1. 首先key在遍历json对象中属性值的时候,经历了,key='name'、key='age'、然后key遇到'colors'的时候发现它是个数组。所以key就成了0,1,2这样的索引值,把数组里的值遍历出来,是这样的过程吗?
2. key在等于colors的时候,难道key不应该以colors[0],colors[1]这样的形式存在吗?
不是课程里的内容,还是辛苦老师解答一下。
非常感谢。
正在回答
同学你好,第一条理解的正确,第二条理解的不对。当遍历['red','yellow','blue']时,key就是数组成员的下标(索引值),即1,2,3 。而value就是数组成员,即'red','yellow','blue'。
另外,本站的教学服务只包含站内视频内容问题解答、站内习题问题解答、站内作业问题解答、站内测试题问题解答以及站内产品使用问题解答。同学的问题内容与本站视频、习题以及作业等内容无关联,故不包含在本站的教学服务内。
不过老师看你挺爱学习的,所以破例为你解答一次。还是建议同学合理安排时间,把学习的重点放在课程内容本身,打好基础。
如果我的回答帮助到了你,欢迎采纳,祝学习愉快~
- 参与学习 人
- 提交作业 239 份
- 解答问题 10739 个
本阶段带你深入前端开发的肌理,通过ES6基础知识和前端主流高级框架的学习,助你快速构建企业级移动webAPP应用,进入职场的终极battle
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星