jQuery差异.html(“”)与.empty()[重复]

2020/12/31 16:21 · jquery ·  · 0评论

在Jquery中有什么区别

$('#divid').html("");

$('#divid').empty();

两者在jQuery.js内部是否执行相同的操作

以及哪个更好用。

认为.empty()更快。是的jQuery源.empty()

empty: function() {
    var elem,
        i = 0;

    for ( ; ( elem = this[ i ] ) != null; i++ ) {
        if ( elem.nodeType === 1 ) {

            // Prevent memory leaks
            jQuery.cleanData( getAll( elem, false ) );

            // Remove any remaining nodes
            elem.textContent = "";
        }
    }

    return this;
}

是jQuery的.html("")来源:

html: function( value ) {
    return access( this, function( value ) {
        var elem = this[ 0 ] || {},
            i = 0,
            l = this.length;

        if ( value === undefined && elem.nodeType === 1 ) {
            return elem.innerHTML;
        }

        // See if we can take a shortcut and just use innerHTML
        if ( typeof value === "string" && !rnoInnerhtml.test( value ) &&
            !wrapMap[ ( rtagName.exec( value ) || [ "", "" ] )[ 1 ].toLowerCase() ] ) {

            value = jQuery.htmlPrefilter( value );

            try {
                for ( ; i < l; i++ ) {
                    elem = this[ i ] || {};

                    // Remove element nodes and prevent memory leaks
                    if ( elem.nodeType === 1 ) {
                        jQuery.cleanData( getAll( elem, false ) );
                        elem.innerHTML = value;
                    }
                }

                elem = 0;

            // If using innerHTML throws an exception, use the fallback method
            } catch ( e ) {}
        }

        if ( elem ) {
            this.empty().append( value );
        }
    }, null, value, arguments.length );
}

很明显,您可以选择最好的。

我在JSperf中尝试了以下内容,并发现使用$('#divid')。empty(); 更好

在此处输入图片说明

函数源代码html,除其他外:

        if ( elem ) {
            this.empty().append( value );
        }

所以html打电话empty因此,简单地调用会(略微)快一些empty当然,它更具可读性。

本文地址:http://jquery.askforanswer.com/jquerychayi-htmlyu-emptyzhongfu.html
文章标签: ,  
版权声明:本文为原创文章,版权归 admin 所有,欢迎分享本文,转载请保留出处!

文件下载

老薛主机终身7折优惠码boke112

上一篇:
下一篇:

评论已关闭!