微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

JavaScript数组拼接

您好StackOverflow社区!

目前,我完全陷入了代码困境,尝试了各种不同的方法来从数组中删除值(在选择时),我知道我必须为此使用splice,但是由于某种原因,它没有按照我想要的去做

由于该网页很难解释为我的英语好语,因此我对其做了一些屏幕截图,希望您一看清我想做的事情就明白了!

这就是用户访问网页时看到的内容,这基本上是一种娱乐游戏.用户必须将3张卡片拖到卡片下方的灰色框中.

将3张卡片拖到框中后,用户可以单击图像(卡片)以将其翻转(翻转)

这很好用,唯一的问题是我不希望用户选择同一张卡片,甚至两次,甚至两次.由于我是用数组进行的,所以我认为我应该使用Splice函数,但到目前为止,没有结果!

JavaScript代码,这里是JSfiddle http://jsfiddle.net/dkk2nqyg/

在这里的某个地方,我必须添加接头

$(function () {
var cars = ["2", "3", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "4"];
var rand = cars[Math.floor(Math.random()*cars.length)];

    $(".cards img").each(function(index) {
        $(this).wrap('<div class="front"></div>')
           .parent().wrap('<div class="flipper"></div>')
           .parent().wrap('<div class="flip-container"></div>')
           .append('<div class="back"><img src="./kaart/'+cars[Math.floor(Math.random()*cars.length)]+'.png"</img> </div>');
});

我尝试了许多解决方案,但问题是我需要在这里拼接至少,我认为:

.append('<div class="back"><img src="./kaart/'+cars[Math.floor(Math.random()*cars.length)]+'.png"</img> </div>');

我很高兴能解决此问题,希望StackOverflow可以为我提供我想要的帮助:)

谢谢!

解决方法:

您可以使用splice()从数组中删除一项,因为splice返回一个数组,然后您可以访问索引为0的元素以获取提取的src值

'<div class="back"><img src="./kaart/' + cars.splice(Math.floor(Math.random() * cars.length),1)[0] + '.png"</img> </div>'

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐