我不明白使用"let"关键字的最佳方式...
<script type="application/javascript;version=1.7"/>,但在IE11,Chrome45,Safari8中甚至不会将此脚本类型识别为Javascript.这是一个JSFiddle,它显示了它的实际效果:https://jsfiddle.net/p6cgtyg6/1/
所以 - 我不介意要求用户使用他们浏览器的现代版本.
如果老实说没有支持这个关键字的Safari版本,我不介意排除Safari.(这是真的吗?为什么每个人都花费所有时间来关注IE,当Safari在ES6条件下看起来更糟糕?我错过了什么?).
但是我应该如何允许"让"在Firefox中工作而不阻止Chrome/IE?(我还没有找到人们关于Firefox脚本标签与Chrome的行为方式不同的链接,我预计会有更多投诉,所以我认为我一定错过了一些明显的东西......)
在照片>标签下的OneDrive网站上,它显示它对我的照片进行了幕后完成分析,并找出了常见的标签,例如#People,#Fireworks,#Whiteboard.
如何通过OneDrive API以编程方式访问这些标签?
看起来它们并没有物理存储在JPEG的EXIF标题中 - 至少,我没有使用ExifTool或exifdata.com网站找到它们.(实际上我甚至无法判断EXIF是否允许在其中存储任意标签...搜索"exif标签"可以理解地产生错误的结果:))
我找不到任何提到这些标签的OneDrive API.例如,它们似乎没有出现在任何方面.
我的节点服务器应用程序正在使用 ws WebSocket 库:
socket.send(data, err => {
if (err == null) {...success...}
else {...failure...}
Run Code Online (Sandbox Code Playgroud)
客户端也使用 ws 侦听消息:
ws.on('message', message => ...handler...);
Run Code Online (Sandbox Code Playgroud)
我正在寻找一个错误,有时,如果客户端的网络连接丢失(例如我关闭 wifi),那么看起来服务器报告消息已成功发送,但客户端的处理程序从未被调用。
问题:这可能吗?这确实是“ws”WebSocket 库的预期故障模式之一吗?成功socket.send()实际上证明了什么?
(我知道所有网络协议都在某个地方存在漏洞窗口。我试图找出 ws 库的那个窗口的确切位置,以便我可以在它之上构建正确的语义。我还没有从文档中找到该窗口正是用于 ws 的。)
可能:可能socket.send会在将消息放入其传出 TCP 缓冲区后报告成功。但是,如果网络在退出 TCP 缓冲区之前出现故障,则消息将永远丢失。
可能:socket.send一旦将消息传递到接收方的 TCP 消息队列并收到 TCP ACK 确认消息已传递,则可能报告成功,但是如果客户端的网络在调用处理程序之前出现故障,则消息将永远丢失.
如何使用 jq 计算数组的中位数 (P50)?jq手册描述了如何计算平均值,但我想得到中位数。
算法:给定一个数字列表,对其进行排序。如果条目数为奇数,则选择中间的条目。如果有偶数个条目,则计算中间两个的平均值。
例子:
echo '[1,5,9,3]' | jq <ANSWER> # should output 4, since it's the mean of 3 and 5
echo '[1,9,2]' | jq <ANSWER> # should output 2, since it's the middle element
echo '[]' | jq <ANSWER> # undefined
Run Code Online (Sandbox Code Playgroud)