請教各位前輩要如何宣告一個所有物件都可用的方法,但又不會有後遺症呢?
小弟我的敘述能力不好,請多多包涵我遇到的狀況是
首先我是在寫opera瀏覽器的userJS遇到的
我不確定這個問題是只有在opera才有,還是因為我的作法才有我用Object.prototype.abc=function(){}宣告了一個abc的方法
但我發現一旦使用apply或是call,"abc"這個方法就會被自動執行
或是一些有使用到JQuery的函式也會造成abc自動執行
或是遍歷for(i in window)時,"abc"會被列為其中
是我漏掉了什麼嗎?有沒有辦法宣告一個所有物件都可用的方法
但不會造成這種問題呢?
小弟我的敘述能力不好,請多多包涵我遇到的狀況是
首先我是在寫opera瀏覽器的userJS遇到的
我不確定這個問題是只有在opera才有,還是因為我的作法才有我用Object.prototype.abc=function(){}宣告了一個abc的方法
但我發現一旦使用apply或是call,"abc"這個方法就會被自動執行
或是一些有使用到JQuery的函式也會造成abc自動執行
或是遍歷for(i in window)時,"abc"會被列為其中
是我漏掉了什麼嗎?有沒有辦法宣告一個所有物件都可用的方法
但不會造成這種問題呢?
解决方案 »
- 求一段代码…我急用啊
- 用nextSibling如何取得strong标签里面的值?
- 用smarty从php得到一个值,如果这个值为空则不显示img标签,如果不为空则作为img的src
- 求javascript做网页load原理,判断网页总数据量,下载速度
- ajax不调用后台代码
- 大家新年好! 请问如何使一个INPUT(text)自动适应所在表格的宽度?
- 请问:event.fromElement和event.toElement大家有没有用过,怎么用??
- 急救:
- 求推荐一款好用的网页开发软件
- 干货分享!史上最全的JavaScript超详细的知识点总结思维导图
- js怎么判断是否点击了框架里面的链接
- js 销毁对象
但是去扩展 Object.prototype 是件相当恐怖的事情 还是不要这么做吧。
另外我简单测试了下 IE貌似虽然window属于object 但是不继承object还有 apply调用我也测试过了 并没有引发 你说的问题 你可以在检查或者调试下代码
因為我的寫法也很簡單,但它就是會觸發....那有沒有辦法模仿JQuery做一個類,賦予這個類一個方法
但是這個"類"要任何物件都可以接受,有辦法做到嗎?
若可以的話可以指點我一下嗎?
感謝!