对象,每一步方法调用是对对象的一次作用,整个方法链将各个方法的作用叠加起来。
//Javascript
$('li').filter(':event').css('background-color', 'red');
3. 层次结构抽象
“
”
除了管道这种 线性 结构外,流畅接口还可用于构造层次结构抽象。比如,用
Javascript 动态创建创建下面的 HTML 片段:
Name: iPad2 32G
Price: 3600
若采用 Javascript 的 DOM API:
//Javascript
var div = document.createElement('div');
div.setAttribute(‘id’, ‘product_123’);
div.setAttribute(‘class’, ‘product’);
var img = document.createElement('img');
img.setAttribute(‘src’, ‘preview_123.jpg’);
div.appendChild(img);
var ul = document.createElement('ul');
var li1 = document.createElement('li');
var txt1 = document.createTextNode("Name: iPad2 32G");
li1.appendChild(txt1);
…
div.appendChild(ul);
而下面流畅接口 API 则要有表现力得多:
//Javascript
var obj =
$.div({id:’product_123’, class:’product’})
.img({src:’preview_123.jpg’})