繁体   English   中英

如何提高我的js游戏的性能

[英]how to improve the performance o my js game

几天前,我已经开始学习JavaScript,并完成了codeacadmey的工作,并认为我会尝试制作一个简单的游戏。

所以我想出了记忆游戏,您必须在其中找到图像对。

一切正常,我建立了一个评分系统,但是一些人说过,一旦选择了允许其他选择的牌,就会发生延迟,这会阻碍他们,而且我不知道如何提高性能。

这是我认为引起延迟的一些代码,是否有更好的方法产生相同的结果,对不起,在我刚接触所有这些之前。

function check() {

    clearInterval(tid);

        if(people[secondchocie] === people[firstchocie]) {
            cntr++;

            (cntr === numOfMatches) {

                stop();

                score = checkScore(amountGoes); 


                $('#gameFinished').append('<p>Well done, you managed to complete the game your score is <span>' + score + '</span></p>');

                }
                turns = 0;
                return;


                } else {
                document.images[firstchocie + numOfImages].src = backcard;
                document.images[secondchocie + numOfImages].src = backcard;
                turns = 0;
                return;

                }

        }

我无法创建评论,因此将其添加到答案中。

虽然我同意lukas.pukenis ...

如果未预先加载更改图像,则可能需要一些时间。 测试方法:在开始游戏之前,通过将它们添加到页面中的其他位置(即带有IMG标签),尝试将它们添加到浏览器缓存中。

然后,您将确保它们在缓存中。

编辑:

我最近使用了这个:

var cache = [];
function preLoadImages(arrImg)
    {
    var args_len = arrImg.length;
    for (var i = args_len; i--;)
        {
        var cacheImage = document.createElement('img');
        cacheImage.src = arrImg[i];
        cache.push(cacheImage);
        }
    }
preLoadImages(['images/img1.png','images/img2.png','images/img3.png',]);

您可以将所需的所有图像添加到javascript数组。

如果您快速学习:),可以执行以下操作:如果您的页面是由php生成的,则可以让php读取整个图像目录,并将页面中的文件名作为javascript代码写入。 或者,您可以创建一个ajax请求,该请求将返回图像的所有路径并将其作为回调发送到preload函数。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM