相关疑难解决方法(0)

为什么字符串连接比数组连接更快?

今天,我读到了关于字符串连接速度的这个帖子.

令人惊讶的是,字符串连接是赢家:

http://jsben.ch/#/OJ3vo

结果与我的想法相反.此外,大约有这么多的文章,其解释相反像这样.

我可以猜测浏览器已针对concat最新版本的字符串进行了优化,但他们如何做到这一点?我们可以说+在连接字符串时使用它会更好吗?

更新

因此,在现代浏览器中,字符串连接已经过优化,因此使用+符号比使用连接字符串join时要快.

@Arthur指出,join如果你真的想用分隔符连接字符串会更快.

javascript performance string-concatenation

108
推荐指数
4
解决办法
9万
查看次数

Array Join vs String Concat

哪种方法更快?

阵列加入:

var str_to_split = "a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z";
var myarray = str_to_split.split(",");

var output=myarray.join("");
Run Code Online (Sandbox Code Playgroud)

String Concat:

var str_to_split = "a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z";
var myarray = str_to_split.split(",");

var output = "";
for (var i = 0, len = myarray.length; i<len; i++){
    output += myarray[i];
}
Run Code Online (Sandbox Code Playgroud)

javascript arrays performance connection-string join

63
推荐指数
5
解决办法
8万
查看次数

显示阵列中的图像

我试图从javascript数组中显示六个图像.运行下面的代码我没有得到任何结果它似乎没有工作.我不知道我的错在哪里.

这是javascript代码:

var backgroundImage = new Array(); 
backgroundImage[0] = "images/colors-wallpaper.jpg";
backgroundImage[1] = "images/florida-birds.jpg";
backgroundImage[2] = "images/focus-on-life.jpg";
backgroundImage[3] = "images/set-into-life.jpg";
backgroundImage[4] = "images/dandelion.jpg";
backgroundImage[5] = "images/flowers.jpg";
backgroundImage[5] = "images/flowers.jpg";

function displayAllImages() {
// Here has to be some error!!! //
 for (i=0;i<backgroundImage.length;i++) {
    document.write("<li><img src='" + backgroundImage[i] + "' width="160" height="120"/><span>" + backgroundImage[i] + "</span></li>");
}
}
Run Code Online (Sandbox Code Playgroud)

这是我的HTML代码:

<html>
<head>
    <script type="text/javaScript" src="changebackground.js"></script>
</head>
<body>

<div id="container">

    <div class="backgoundImage">
    <ul>
        <script>displayAllImages();</script>
    </ul>
    </div>

</div>

</body>
</html>
Run Code Online (Sandbox Code Playgroud)

javascript image

2
推荐指数
1
解决办法
3万
查看次数