Window.name
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
获取/设置窗口的名称。
语法
string = window.name; window.name = string;
示例
js
window.name = "lab_view";
备注
窗口的名字主要用于为超链接和表单设置目标(targets)。窗口不需要有名称。
在某些框架里(如,SessionVars 和 Dojo's dojox.io.windowName ,该属性也被用于作为 JSONP 的一个更安全的备选,来提供跨域通信(cross-domain messaging)。现代 web 应用应使用 postMessage API 进行敏感的跨域通信。
window.name
会调用 toString
将赋给它的值转换成对应的字符串表示。
(译注:此处似有不妥,私以为调用的应是 ToString
抽象方法。事实上,如果将一个 Symbol 类型的值赋给 window.name
,会报 TypeError
,而非调用 Symbol.toString()
转换成字符串后进行赋值。例如:
js
window.name = Symbol.for("foo"); // TypeError
window.name = Symbol.for("foo").toString(); // "Symbol(foo)"
具体可参见 EMCA 语言规范中 Type Conversion 一节。)
规范
Specification |
---|
HTML Standard # dom-name-dev |
浏览器兼容性
BCD tables only load in the browser