为什么我不能创建新的窗口实例
Why I can't create new instance of window?
为什么我不能创建一个新的窗口实例。
当我尝试时:
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
关键字的作用是创建一个新对象并将其设置为构造函数的上下文。
相关文章:
- 如何在事件函数中访问窗口实例
- 在窗口调整大小时调整tinymce实例的大小
- 像cookie这样的全局变量,它在回发后保留值,但应该为不同的实例保存不同的值(选项卡/窗口)
- 窗口、文档、数学、未定义作为类实例化的参数传递
- 多个语义 UI 弹出窗口,其中目标元素在每个实例的 atribute 中定义
- 为什么我不能创建新的窗口实例
- 同一页面上的 jQuery 弹出窗口上的多个实例
- 调整窗口大小时BJQS滑块的多个实例
- 在带有模态窗口实例的 Angular JS 中保存和下一步
- 钛,如何制作同一个窗口的不同实例
- NG-CHANGE won't fire on alertify弹出窗口实例
- 是否有可能在javascript中获得窗口实例
- 这是正常的行为,为每一个Firefox窗口,我的插件的另一个实例创建
- 如何使用“Ext.window”后释放内存.窗口类实例
- 打开单个实例的弹出窗口IE
- 如何检测某个唯一的浏览器实例号,或每个""的pid数;窗口";或每";选项卡&q
- 在窗口属性中实例化的模块模式
- 无法使用javascript为不同的窗口实例设置计时器
- 如何使用 javascript 创建窗口实例
- 这个内部原型函数等于窗口,而不是对象实例