如果未设置消息,`beforeunload` returnValue 的意义何在?

Whats the point of `beforeunload` returnValue if the message does not get set?

TL;DR 没有现代浏览器使用该消息。

您可以滥用此消息中的 api,以便浏览器放弃使用该参数。感谢 Huangism、lilezek 和 James 的以下回复。

如果消息从未设置,在 onbeforeunload 回调中设置事件 returnValue 有什么意义?

The MDN docs here建议我们设置这个值,不设置这个值我无法提示用户。但是,在设置该值时,我没有在任何确认消息中看到我的字符串。

Example of chrome dialog

根据MDN docs

In some browsers, the return value of the event is displayed in this dialog.

此外,在 MDN 文档的末尾,有一个 table 表明每个浏览器都删除了对自定义文本的支持。