簡體   English   中英

使用 jquery 從數組中打印隨機元素

[英]Print random elements from an array using jquery

我正在嘗試使用 jquery 函數隨機打印數組元素。 我使用 math.random 生成了隨機數計數,但無法在 html 文檔中打印數組元素。 (.print-que) 是 html 中的 class ,我在這里引用。 使用 jquery object 訪問數組元素時,還會出現標識符預期錯誤。 有什么解決方案嗎?

function kidzee() {

    var que = [
        "Click on a circle shaped object",
        "Click on a rectangle shaped object",
        "Click on a triangle shaped object",
        "Click on a square shaped object",
        
    ];
    

    var queArr = que.length;

    

    function generateQuestion() {
        //var len = que.length;
        //Generates random question and displays it
        var queNo = Math.floor((Math.random() * queArr-1) + 0);
        $(".print-que").html( que.[queNo] );
        
    }




    return {
        generateQuestion : generateQuestion
    }
}

var kidzeeInstance = kidzee();
kidzeeInstance.generateQuestion(); 

它不需要 jquery。 只需使用“數學”。 Random' 使用 javascript 獲取您想要的索引。它返回一個介於 0(包括)和 1(不包括)之間的隨機數。 然后,您可以將值與數組長度相乘並獲得 integer 值,您可以使用 math.floor 或 round。

var number = 1 + Math.floor(Math.random() * length);

您可以使用此值隨機訪問數組。 將長度變量替換為數組的大小。

你能試試這個 - $(".print-que").append(Math.floor(Math.random() * que.length));

請檢查que.[queNo]並將其替換為que[queNo]

$(".print-que").html( que[queNo] );

 function kidzee() { var que = [ "Click on a circle shaped object", "Click on a rectangle shaped object", "Click on a triangle shaped object", "Click on a square shaped object" ]; var queArr = que.length; function generateQuestion() { //var len = que.length; //Generates random question and displays it var queNo = Math.floor((Math.random() * queArr-1) + 0); $(".print-que").html( que[queNo] ); } return { generateQuestion: generateQuestion } } var kidzeeInstance = kidzee(); kidzeeInstance.generateQuestion();
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <div class="print-que"> </div>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM