链接一个本地函数
jQuery - chaining a native function
谁能解释一下为什么我可以像这样将一个本地JavaScript函数链接到一个jQuery函数:
$('#search').val().replace("00:00:00", "")
在本例中,replace是原生JavaScript函数。
http://www.w3schools.com/jsref/jsref_replace.asp谢谢
在这种情况下,val()
必须返回string
值,因此replace
按预期工作。这与调用返回string
的函数并链接
function example() {
return "foo";
}
example().replace("00:00:00", "");
正如Jamie所说,函数从左到右求值。所以val()返回一个类型字符串,它的方法是replace
。jquery函数都是可链的原因是,它们每次返回时都会返回一个由选择器创建的原始对象的引用。除了val(), text(), html()和一些其他的。
这是因为:
$('#search').val().replace("00:00:00", "")
将计算为:
"some string".replace("00:00:00", "")
没有什么特别的。基本上总是从左到右对函数求值,在以下情况下也是如此:
$('#search').eq(0).val().replace("00:00:00", "")
<jQuery obj>.val().replace("00:00:00", "")
"some string".replace("00:00:00", "")
相关文章:
- 创建一个类似链接的按钮,并通过Javascript函数打开一个新的弹出窗口
- 我可以在json对象中添加一个函数吗
- Javascript使函数一个接一个地执行
- 是JavaScript中的函数一个对象
- 两个几乎相等的jQuery函数;一个适用于IE,一个不适用于IE
- 两个Javascript函数一个window.onload=Custom.init;和一个window.onload=f
- 使javascript加载函数一个接一个地执行
- 如何通过两个嵌套的匿名函数(一个带有超时的事件处理程序)传递变量
- 为什么我不能让两个jQuery函数一个在另一个里面呢?
- 给函数一个变量名,而不是它的值
- 如何使用嵌入函数(一个滚动页由Pete - peachananr)
- 是否有可能给JavaScript函数一个类型/类?
- 确保两个函数一个接一个地执行,其中第一个函数内部有一个异步调用
- 两个不同的ajax函数一个接一个调用返回相同的值
- jQuery第一次更改函数一个工作
- 给这个函数一个id
- 如何给回调函数一个值一个变量在特定时刻
- 使用回调使两个函数一个接一个地运行
- 两个函数(一个用php)是否可以用“;onclick”;
- 两个几乎相同的函数.一个函数用Queue进行排队.Jquery效果在queued函数上不起作用.为什么