error 的 message 到底有没有句点?

2017-05-29 10:47:43 +08:00
 dou4cc

我记得以前是统一不要句点的,不知道 nightly 见了什么鬼~

2938 次点击
所在节点    JavaScript
11 条回复
viko16
2017-05-29 12:56:49 +08:00
TypeError: Illegal invocation 说得很明显了,非法调用

跟句号无关,你应该写成 alert.call(this, 1)

文档:
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Function/call
DoraJDJ
2017-05-29 12:59:05 +08:00
@viko16 人家问的是 Error 里的 message 到底要不要有句号...
viko16
2017-05-29 13:02:05 +08:00
我好像误会你意思了,errer.message 这些常量并没有标准噢,所以有没有句号看实现...
viko16
2017-05-29 13:02:44 +08:00
@DoraJDJ #2 感谢提醒 _(:зゝ∠)_
dou4cc
2017-05-29 14:02:01 +08:00
@viko16 可是以前各实现都是不带句号的嘛,一会儿带一会儿不带叫我怎么拼句子啊(╯‵□′)╯︵┻━┻
crysislinux
2017-05-29 14:11:20 +08:00
为什么要拼句子。提供自己的错误信息就是了。
dou4cc
2017-05-29 14:15:42 +08:00
@crysislinux 所以你都是无视自带 error 的 message 的???
skyshy
2017-05-29 15:31:23 +08:00
可以正则匹配句末,去除句号等字符,然后自己统一加句号和空格: “. ”,最后在拼接
crysislinux
2017-05-29 17:15:44 +08:00
@crysislinux production 的版本都不会输出原始错误,开发的版本直接 log 出原始的 error 就是了。而且即使要拼,可以拼在末尾。
geelaw
2017-05-29 22:05:20 +08:00
你可以用引号包裹这段文字,并且这段文字不应该直接扔给用户。

一个有趣的问题:message 会不会是本地化的?
dou4cc
2017-05-30 12:34:08 +08:00
@geelaw IE、Edge 和老版本 Firefox 的 error message 是本地化的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/364542

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX