曾经耍过一些小聪明,而且是相当然的,有人问我你做过验证吗,….木有,然后也觉得自己很不靠普

下面是验证以前做一个选择器的时候用到的方法,主要是为了加速判断是否已选的操作

<html>
<script>
function ctime(func)
{
    var s = new Date().getTime();
    func();
    return new Date().getTime() - s;
}
var time;
time = ctime(function()
{
    var i = 0;
    astr = [];
    while (i < 10000)
    {
        astr.push('fasdfasdf');         
        i ++;
    }
});
document.write(time + '</br>');
 
time = ctime(function()
{
    var i = 0;
    sstr = '';
    while (i < 10000)
    {
        sstr = sstr + 'fasdfasdf';         
        i ++;
    }
});
document.write(time + '</br>');
 
function is_include(arr, v)
{
    for ( var i = 0, j = arr.length; i < j; i ++ )
    {
        if (arr[i] == v) return true;
    }
    return false;
}
time = ctime(function()
{
    var i = 0;
    while (i < 1000)
    {
        if (is_include(astr, '12321423')) break;         
        i ++;
    }
});
document.write(time + '</br>');
 
time = ctime(function()
{
    var i = 0;
    while (i < 1000)
    {
        if (sstr.indexOf('12321423') !== -1) break;         
        i ++;
    }
});
document.write(time + '</br>');
</script>
</html>
Copy Code | Run Code

运行结果
ie6:

20
1342
5699
280

ie8:

30
30
9163
441

ff3.6:

1
2
111
97