Prototype 学习 工具函数学习($w,$F方法)


Posted in Javascript onJuly 12, 2009

$w方法
Splits a string into an Array, treating all whitespace as delimiters. Equivalent to Ruby's %w{foo bar} or Perl's qw(foo bar).

function $w(string) { 
if (!Object.isString(string)) return []; 
string = string.strip(); 
return string ? string.split(/\s+/) : []; 
}

这个方法就是用空白字符把字符串分成数组,然后返回。
例子:
$w('apples bananas kiwis') // -> ['apples', 'bananas', 'kiwis']

$F方法
Returns the value of a form control. This is a convenience alias of Form.Element.getValue.
var $F = Form.Element.Methods.getValue; 
//====>getValue() 
getValue: function(element) { 
element = $(element); 
var method = element.tagName.toLowerCase(); 
return Form.Element.Serializers[method](element); 
} 
//====>Serializers 
Form.Element.Serializers = { 
input: function(element, value) { 
switch (element.type.toLowerCase()) { 
case 'checkbox': 
case 'radio': 
return Form.Element.Serializers.inputSelector(element, value); 
default: 
return Form.Element.Serializers.textarea(element, value); 
} 
}, 
inputSelector: function(element, value) { 
if (Object.isUndefined(value)) return element.checked ? element.value : 
null; 
else element.checked = !!value; 
}, 
textarea: function(element, value) { 
if (Object.isUndefined(value)) return element.value; 
else element.value = value; 
}, 
//省略,以后说到这个对象的时候在详细说明 
...... 
//====> Object.isUndefined 
function isUndefined(object) { 
return typeof object === "undefined"; 
}

这个函数最后就是返回传入参数的值。从Form.Element.Serializers 这个对象里面定义的方法可以看出,$F方法取得的是Form元素的值,如果定义一个div然后调用这个方法将会抛出Form.Element.Serializers[method] is not a function异常,如果给定的ID不存在将会抛出element has no properties异常。
在Form.Element.Serializers 里面的方法中先检查value这个参数是否存在,存在就相当于给element参数赋值,不存在就会返回element的值
Javascript 相关文章推荐
IE6下js通过css隐藏select的一个bug
Aug 16 Javascript
使用indexOf等在JavaScript的数组中进行元素查找和替换
Sep 18 Javascript
JavaScript实现的内存数据库LokiJS介绍和入门实例
Nov 17 Javascript
JavaScript 学习笔记之操作符(续)
Jan 14 Javascript
javascript中return,return true,return false三者的用法及区别
Nov 17 Javascript
JavaScript进阶练习及简单实例分析
Jun 03 Javascript
jQuery基本过滤选择器用法示例
Sep 09 Javascript
jQuery表格(Table)基本操作实例分析
Mar 10 Javascript
AngularJS双向绑定和依赖反转实例详解
Apr 15 Javascript
JavaScript表单验证实现代码
May 22 Javascript
vuex提交state&&实时监听state数据的改变方法
Sep 16 Javascript
node解析修改nginx配置文件操作实例分析
Nov 06 Javascript
Prototype 学习 工具函数学习($A方法)
Jul 12 #Javascript
Prototype 学习 工具函数学习($方法)
Jul 12 #Javascript
Prototype 学习 Prototype对象
Jul 12 #Javascript
javascript 动态加载 css 方法总结
Jul 11 #Javascript
checkbox 复选框不能为空
Jul 11 #Javascript
javascript 页面只自动刷新一次
Jul 10 #Javascript
javascript div 遮罩层封锁整个页面
Jul 10 #Javascript
You might like
Thinkphp开发--集成极光推送
2017/09/15 PHP
PHP代码重构方法漫谈
2018/04/17 PHP
extjs form textfield的隐藏方法
2008/12/29 Javascript
javascript 面向对象思想 附源码
2009/07/07 Javascript
JavaScript 提升运行速度之循环篇 译文
2009/08/15 Javascript
基于jquery的模态div层弹出效果
2010/08/21 Javascript
C#中使用迭代器处理等待任务
2015/07/13 Javascript
Javascript数组Array方法解读
2016/03/13 Javascript
网页中JS函数自动执行常用三种方法
2016/03/30 Javascript
微信小程序 数组(增,删,改,查)等操作实例详解
2017/01/05 Javascript
使用BootStrap进行轮播图的制作
2017/01/06 Javascript
JavaScript中的toString()和toLocaleString()方法的区别
2017/02/15 Javascript
微信小程序遇到修改数据后页面不渲染的问题解决
2017/03/09 Javascript
使用jQuery给Table动态增加行、清空table的方法
2018/09/05 jQuery
Vue点击切换颜色的方法
2018/09/13 Javascript
vue实现百度下拉列表交互操作示例
2019/03/12 Javascript
微信小程序云开发如何使用云函数生成二维码
2019/05/18 Javascript
Vue指令之 v-cloak、v-text、v-html实例详解
2019/08/08 Javascript
JavaScript 类的封装操作示例详解
2020/05/16 Javascript
[03:03]2014DOTA2西雅图国际邀请赛 Alliance战队巡礼
2014/07/07 DOTA
[50:54]完美世界DOTA2联赛 GXR vs IO 第三场 11.07
2020/11/10 DOTA
在Python中使用列表生成式的教程
2015/04/27 Python
在ironpython中利用装饰器执行SQL操作的例子
2015/05/02 Python
Python基础之getpass模块详细介绍
2017/08/10 Python
一篇文章读懂Python赋值与拷贝
2018/04/19 Python
利用Python在一个文件的头部插入数据的实例
2018/05/02 Python
pyqt5对用qt designer设计的窗体实现弹出子窗口的示例
2019/06/19 Python
PyTorch的深度学习入门之PyTorch安装和配置
2019/06/27 Python
python二分法查找算法实现方法【递归与非递归】
2019/12/06 Python
TensorFlow2.1.0安装过程中setuptools、wrapt等相关错误指南
2020/04/08 Python
python字典通过值反查键的实现(简洁写法)
2020/09/30 Python
OpenCV利用python来实现图像的直方图均衡化
2020/10/21 Python
检查机关领导群众路线教育实践活动个人整改措施
2014/10/28 职场文书
材料员岗位职责范本
2015/04/11 职场文书
2015年高三毕业班班主任工作总结
2015/10/22 职场文书
详解Vue项目的打包方式(生成dist文件)
2022/01/18 Vue.js