iteye_15891 2008-12-24 09:07
浏览 237
已采纳

jquery 1.2.6 isFunction 中的一段正则的疑问

大家好,

jquery 1.2.6 中 isFunction 的实现代码里用到了一个奇怪的正则,请教了公司的人还是没人知道。请大家帮忙看看是什么意思。
[code="js"]
// See test/unit/core.js for details concerning this function.
isFunction: function( fn ) {
return !!fn && typeof fn != "string" && !fn.nodeName &&
fn.constructor != Array && /^[\s[]?function/.test( fn + "" );
}
[/code]
那个 ^[\s[]?function 我百思不得其解。

谢谢!

  • 写回答

1条回答 默认 最新

  • xieye114 2008-12-27 11:30
    关注

    很简单的。

    fn+""
    强制转换为字符串

    这个字符串
    必须是funtion开头
    或者function前加一个空白字符也行
    或者function前是左方括号也行。
    除此之外都不行。

    ie下测试通过。

    估计是什么浏览器兼容的把戏,呵

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作