当前位置: 首页 > 图文教程 > 网络编程 > Javascript > Prototype 学习 工具函数学习($w,$F方法)

Javascript
分时段切换CSS(JavaScript,ASP,PHP)
手把手教你用JS创建幻灯片特效
Ajax和CSS设计的表格实例
JS获得CSS中声明的特定样式中的某属性值
css和Ajax制作的表格
CSS初学:如何修改Zblog中的CSS
setAttribute方法实现网页两种样式表
JS和HTML分离:注册事件的方法进行封装
网页整理的Javascript的技巧代码
使用JavaScript数组上的经验之谈
AJAX结合CSS实现的网页Tab选项卡效果
JS教程:thickbox弹出框效果
IE和Firefox在JavaScript语法上不同的7个方面
WEB前端开发高性能优化:JavaScript的优化细节
基于jquery的上传插件Uploadify
7个在IE和Firefox中不同的JavaScript语法
JS函数:动态添加CSS样式表
在IE中使用JavaScript(一)
在IE中使用JavaScript(二)
JavaScript[对象.属性]集锦之四

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 312 ::
收藏到网摘: n/a

Prototype $w $F使用方法 $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的值