使用输入#id和#id之间有什么区别?

时间:2017-03-16 09:29:50

标签: javascript jquery

有没有理由使用ex。输入#ID?为什么不只是#id?代码如下:

static class pjmedia_echo_flag {
            static long PJMEDIA_ECHO_WEBRTC = 3,
                    PJMEDIA_ECHO_USE_NOISE_SUPPRESSOR = 128,
                    PJMEDIA_ECHO_AGGRESSIVENESS_AGGRESSIVE = 0x300;
        }

    epConfig.getMedConfig().setEcOptions(pjmedia_echo_flag.PJMEDIA_ECHO_WEBRTC|
                pjmedia_echo_flag.PJMEDIA_ECHO_USE_NOISE_SUPPRESSOR|
                pjmedia_echo_flag.PJMEDIA_ECHO_AGGRESSIVENESS_AGGRESSIVE);

VS

$("button").on("click", function() {
    var rate = $("#rate_1").val();
    var quant = $("#quant_1").val();
});

HTML

$("button").on("click", function() {
    var rate = $("input#rate_1").val();
    var quant = $("input#quant_1").val();
});

1 个答案:

答案 0 :(得分:1)

就这种情况下的实际效果而言,没有区别。

就潜在的实际效果而言,input#id仅选择(a)为input元素且(b)将id属性设置为id的元素。 #id只要求进行第二次检查。所以你稍微具体一点。也就是说,如果您有id可以应用于多种类型的元素,那么您就会做错事。

在性能效果方面,存在细微差别。在幕后,使用#idsource)找到了document.getElementByIdinput#id使用jQuery.find,因此最终使用document.querySelectorAllsource)。 getElementById方法的性能略有提升 - 但不要注意这一点。如果重复一千次,你将无法注意到它的收益。

最显着的差异:input#id是更多要输入的字符,输入错误的可能性更大。