Prototype1.5.1源代码解读分析-3
BrowserFeatures(浏览器特征)的值也是一个对象。内容如下:
{
XPath: !!document.evaluate,
ElementExtensions: !!window.HTMLElement,
SpecificElementExtensions:
(document.createElement('div').__proto__ !==
document.createElement('form').__proto__)
}
Prototype也规定了一个(初始化的)属性来描述浏览器的特征信息,然后它在源代码中被到处使用。这个思想是,第一,让Prototype的源代码更易读;第二,让无论怎样的脚本欺骗必然被浏览器特征所探测出来,目的是减轻维护。(译者注:第二点好像翻译得不太对哦!水平有限!)
唯一当前可用的特征探测是浏览器支持DOM LEVEL 3 XPath,在Prototype.BrowserFeatures.XPath.中返回一个布尔值
ScriptFragment
ScriptFragment属性的作用是识别脚本的正则表达式,返回一个字符串。在文档中没有找到关于他的描述。内容如下:
ScriptFragment: '<script[^>]*>([\u0001-\uFFFF]*?)</script>'
JSONFilter
JSONFilter(JSON过滤器)属性的作用不详,在文档中没有找到关于他的描述。内容如下:
JSONFilter: /^\/\*-secure-\s*(.*)\s*\*\/\s*$/
emptyFunction
emptyFunction(空函数)属性是一个空函数。他不做任何事也不返回任何值。内容如下:
emptyFunction: function() { }
K
K属性的作用是回传参数。内容如下:
K:function(x) { return x }
Prototype1.5.1源代码解读分析-3相关推荐
- Prototype1.5.1源代码解读分析-1
< DOCTYPE html PUBLIC -WCDTD XHTML TransitionalEN httpwwwworgTRxhtmlDTDxhtml-transitionaldtd> ...
- Prototype1.5.1源代码解读分析-5
< DOCTYPE html PUBLIC -WCDTD XHTML StrictEN httpwwwworgTRxhtmlDTDxhtml-strictdtd> Abstract源代码 ...
- 复制linux内核,linux内核写时复制机制源代码解读
作者简介 写时复制技术(一下简称COW)是linux内核比较重要的一种机制,我们都知道:父进程fork子进程的时候,子进程会和父进程会以只读的方式共享所有私有的可写页,当有一方将要写的时候会发生COW ...
- FFmpeg源代码简单分析:结构体成员管理系统-AVOption
===================================================== FFmpeg的库函数源代码分析文章列表: [架构图] FFmpeg源代码结构图 - 解码 F ...
- 量化投资之工具篇一:Backtrader从入门到精通(3)-Cerebro源代码解读
前面两篇文章已经一步一步展示了如何使用backtrader以及使用backtrader的一些重要概念和注意事项.但是你要真正灵活地使用backtrader实现自己的策略,还需要了解backtrader ...
- jqfactor_analyzer源代码解读02
jqfactor_analyzer单因子分析02 首先jqfactor_analyzer源代码解读01中已经得到了self._clean_factor_data(注意binning_by_group参 ...
- FFmpeg源代码简单分析-其他-AVClass和AVoption
参考链接 FFmpeg源代码简单分析:结构体成员管理系统-AVClass_雷霄骅的博客-CSDN博客 FFmpeg源代码简单分析:结构体成员管理系统-AVOption_雷霄骅的博客-CSDN博客 概述 ...
- ARM linux的启动部分源代码简略分析
ARM linux的启动部分源代码简略分析 以友善之臂的mini2440开发板为平台,以较新的内核linux-2.6.32.7版本为例,仅作说明之用. 当内核映像被加载到RAM之后,Bootloade ...
- java通过对.class文件字节码加密,不被轻易反编译出源代码,分析及其实现。
java通过对字节码加密,不被轻易反编译出源代码. 分析: JVM运行java文件是通过加载.class文件实现程序运行的,而且这个过程被我们称为类加载机制. 执行加载这个动作的是类加载器(java. ...
最新文章
- WebService重载问题
- python功能分享_Python中非常实用的一些功能和函数分享
- gorm配置logger显示执行的sql
- [转载] C#面向对象设计模式纵横谈——25 设计模式总结
- python web开发基础_python web开发基本概念
- synchronized与锁升级
- Java 下一代: Groovy、Scala 和 Clojure
- 微信小游戏 - 理论介绍 - 账号注册 - 开发前准备
- 南京邮电大学计算机专业学费多少,南京邮电大学学费多少
- UVA - 10105 Polynomial Coefficients
- Codeforces1388 D. Captain Flint and Treasure(贪心)
- 解决stm32下载错误 “Could not stop Cortex-M device.Please check the JTAG cable.“
- 吐血推荐珍藏的 Chrome 插件二
- stm32单片机实现多个闹钟_基于STM32F103系列单片机的11个定时器解析
- 详解如何在vue项目中使用lodop打印插件,以及样式打印预览缺失的问题(底部)
- Python中 *args,**args的详细用法
- 什么是Apptainer?如何在Ubuntu服务器上安装?
- NDK开发之JNI基础
- mysql 什么是幻读_何为幻读?MySQL又是如何解决幻读的?
- 智慧酒店 | 云计算助力酒店行业智慧加码
热门文章
- flyway配置mysql_Flyway快速上手教程
- java矩阵类_151-矩阵类
- c java 开发效率高_Java 的开发效率究竟比 C++ 高在哪里?
- pgsql 查询每天的最后一条_Qamp;A | 如何允许他人查询表单数据?
- mysql更新多条数据6_mysql语句:批量更新多条记录的不同值
- java 集合modcount_源码|jdk源码之LinkedList与modCount字段
- 南充一中计算机机房被盗,四川省CCF CSP-JS第一轮认证考试在南充一中成功举行...
- UVAoj 348 - Optimal Array Multiplication Sequence
- oracle如何设置权限,ORACLE的权限设置
- c语言闰年的判断条件DS1302,DS1302驱动程序(平年和闰年天数自动调整)