为什么我不能创建新的窗口实例

Why I can't create new instance of window?

本文关键字:窗口 实例 创建 不能 为什么      更新时间:2023-09-26

为什么我不能创建一个新的窗口实例。

当我尝试时:

var mywin = new window();

它抛出:

TypeError: object is not a function

我想窗口是一个静态对象,有没有办法将静态对象转换为动态对象,以便我可以做这样的事情:

window.prototype.something = 'value'; 

有人可以对此有所了解吗?

window是表示Javascript中全局上下文的特殊对象。它是 Window 类的实例,但不能创建该类的实例,因为它对解释器具有某种特殊意义。

(如果您只想创建一个窗口,则可以使用 window.open() 函数来完成。

window不是

类,而是对当前Window对象的引用。

Window对象表示浏览器中的窗口,因此不能只创建它的实例。您可以使用 open 方法打开一个新窗口,从而创建一个新的Window实例:

var mywin = window.open('http://www.guffa.com', '_blank');

_blank 目标使open调用实际打开一个新窗口,而不是在当前窗口中打开页面。

Window不是一个类,它是一个接口,所以它没有原型。您可以使用属性扩展当前窗口,但这只会影响该实例,而不会影响所有实例:

window.something = 'value';

错误消息是不言自明的! window 不是一个函数,你只在函数之前使用 new 关键字,然后这个函数被称为构造函数。new关键字的作用是创建一个新对象并将其设置为构造函数的上下文。