zoukankan      html  css  js  c++  java
  • 小议window.event || ev

    以前做项目时就遇到这个问题,但是太懒没有总结,今天来总结一下

    onclick="alert(arguments.callee)"这句随便放在某个元素中,试试不同的浏览器会有弹出什么?

    结果:

    IE7和IE8-------> function onclick(){alert(arguments.callee)}不得不说这俩老小子跟不上时代的步伐,只能靠程序员拖着走.IE6已经被微软放弃,听说阿里都不用再兼容到IE6

    IE9、firefox、chrome------>function onclick(event){alert(arguments.callee)}

    可能会有人不知道arguments,先来说说这个对象,没错,是对象,一个类似数组的对象

    很多js库都利用了arguments对象,所以agruments对象对于javascript程序员来说是必需熟悉的。

    alert(arguments instanceof Array);//返回false

    alert(typeof(arguments));//返回object

     作用之一   可以创建一个灵活的函数

    当函数参数不确定时,but通过arguments就可以方面的知道函数参数的具体个数

    注意:arguments是实参的副本,也就是说与形参无关!

    arguments.callee 返回正在执行的函数本身的引用,怎么理解呢,对函数本身的引用,对,就是这样,是不是很熟悉,递归呀,递归不就是引用了自身,callee方法可以完美实现递归!

    还有一个caller方法,在这儿就不说了

     回到刚开始的地方

    因为存在兼容性问题,所以我们经常需要这样写 

    function Function(ev){
         var event = window.event||ev;
    }
    

      另外,当一个函数没有实参时,arguemgns对象的第一个值就是event对象。

  • 相关阅读:
    ARC 没有自动释放内存
    查看python的路径
    django 一些库
    实现点击按钮,出现隐藏布局
    蓝牙的开启以及搜索
    退出当前程序(应用)的小提示
    删除SharedPreferences的存储记忆
    BaseAdapter和SimpleAdapter的区别
    数据类型
    交互与注释
  • 原文地址:https://www.cnblogs.com/jianjianwoshi/p/4505414.html
Copyright © 2011-2022 走看看