- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
免责声明:这是学校实验室作业的一部分
更新:我想保留这个以供以后引用,所以我只删除代码部分。感谢所有帮助过的人!你帮了大忙
作业(求和):使用包含 30 个名人对象的数组在 HTML/JS 中创建一个名人照片猜谜游戏。
当前状态:我正处于检查用户猜测的部分。用户猜测在 function checkUserGuess()
中调用。如果匹配,则调用 displayOutPut("correct")
或 ("incorrect")
作为下一个函数的参数,function displayOutput(result)
。它采用 result
参数并在 switch 语句中检查它。为了争论,我关心的代码是在“不正确”的情况下而不是“正确”的情况下,因为我不知道这些名人中的大多数面孔。为了测试目的,我故意弄错了。
(随机选择的名人:查理·卓别林)
观察:(根据我的屏幕截图)似乎名人数组已经删除了 Charlie,尽管它在控制台中读取该数组的大小为 30。这是在我拼接之前
查理出数组。 washedupCelebs
数组确实收到了 Charlie。并且,第三个数组显示删除查理的名人数组,大小更改为 29。
Screenshot: /image/prtHk.png
什么是 console.log 的顺序:
randomCelebrity
对象celebrities
删除使用过的名人之前的数组washedupCelebs
数组来存储使用过的名人celebrities
移除当前名人后的数组问题:在 拼接
发生之前删除 Charlie 是否有原因?我应该担心这个吗?我觉得这没什么大不了的,但我宁愿得到一些关于它的意见,这样我才能继续前进。该功能似乎可以正常工作,但它似乎以某种方式出现了故障。
注意事项: - 万一有同学看到这篇文章,我不想 他们窃取了我的代码。我将在几个小时后删除此帖子,因为 出于同样的原因。 - 还有一件事,我知道我的教授是这里的版主,所以如果你看到这个,我会非常乐意删除它并私信给你。不确定您是否介意我这样做,因为我并没有要求任何人实际为我完成作业。
代码:
因可能的复制而删除
最佳答案
TLDR:不要相信控制台。
如果您记录一个对象/数组,它会被序列化(变成一个字符串)并且该序列化版本会被打印到控制台中:
console.log([1, 2]); // [1, 2]
现在对于较长的数组/嵌套对象,完整的序列化可能会导致打印出很长的字符串,这需要时间。另外,那个长字符串可能并没有真正的帮助(您看不到森林中的树)。因此控制台只序列化数组的一小部分,例如
Array(30) [...]
它只是为您提供基本信息,只是数据类型 (Array
) 长度 (30
) 和内容被省略 ([...]
)。
所以实际上没有魔法,在拼接
之前,数组长度是30
,之后是29
。
现在有一个有用但令人困惑的 >
。因为有时缩写的序列化不足以调试,所以需要完整版。问题是,当您单击 >
时,控制台不再知道对象/数组在您记录时的样子。因此它序列化当前状态 对象/数组。因此,在展开的部分中,您会看到拼接版本两次,因为在您单击 >>
时它已经拼接了。
现在要得到当时的序列化版本,要么自己序列化:
console.log( JSON.stringify(array) );
或者克隆数组来存储它的状态:
console.log( array.slice() );
关于javascript - 数组对象在 splice() 语句之前从列表中移除 (JS),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52794737/
我正在做一个项目,我的 android 在这个项目中作为一个网络服务器工作;输入带端口号的 IP 地址,打开 Web 界面,用户可以将文件上传到手机。我想在 Web 界面上显示一些图片,以便我们的界面
我是一名优秀的程序员,十分优秀!