}
}
return ret;
}
});
2、源码分析
jQuery.extend({
clean: function( elems, context, fragment, scripts ) {
// 声明变量
var i, j, elem, tag, wrap, depth, div, hasBody, tbody, len, handleScript, jsTags,
safe = context === document && safeFragment,
ret = [];
// 确保变量context为文档根节点document
if ( !context || typeof context.createDocumentFragment === “undefined” ) {
context = document;
}
// Use the already-created safe fragment if context permits
for ( i = 0; (elem = elems[i]) != null; i++ ) {
// 如果elem为数字,则将其转换为字符串
if ( typeof elem === “number” ) {
elem += “”;
}
// 如果elem为undefined,跳出本次循环
if ( !elem ) {
continue;
}
// Convert html string into DOM nodes
// 转换数组项(字符串)为DOM节点
if ( typeof elem === “string” ) {
// 如果不存在html实体编号或标签,则创建文本节点
if ( !rhtml.test( elem ) ) {
elem = context.createTextNode( elem );










