2017-09-05 14 views
2

我正在編寫一個JavaScript函數來設置我的離線瀏覽器遊戲所需的圖像。我被困在一種情況下,如果默認情況下用戶沒有通過gridSizegridSize的值變爲null則默認值被設置(默認情況下爲4)。如何完成此操作。在javascript中創建默認gridSize

puzzle.js

setImage: function (images, gridSize) { 
    console.log(gridSize); 
    console.log(gridSize); 
    var percentage = 100/(gridSize - 1); 
    var image = images[Math.floor(Math.random() * images.length)]; 
    $('#imgTitle').html(image.title); 
    $('#actualImage').attr('src', image.src); 
    $('#sortable').empty(); 
    for (var i = 0; i < gridSize * gridSize; i++) { 
     var xpos = (percentage * (i % gridSize)) + '%'; 
     var ypos = (percentage * Math.floor(i/gridSize)) + '%'; 
     var li = $('<li class="item" data-value="' + (i) + '"></li>').css({ 
      'background-image': 'url(' + image.src + ')', 
      'background-size': (gridSize * 100) + '%', 
      'background-position': xpos + ' ' + ypos, 
      'width': 400/gridSize, 
      'height': 400/gridSize 
     }); 
     $('#sortable').append(li); 
    } 
    $('#sortable').randomize(); 
} 
}; 
+0

歡迎來到SO!這在質量方面並不是一個壞問題,但它已經在 –

+0

@PabloLozano之前回答了您提供的答案不適用於null的鏈接,但由@BaijNR提供的答案也適用於null。當通過空值時,它只是沒有顯示任何東西 – NiruADV

+0

檢查答案的其餘部分,不僅是選定的答案。第二個解釋如何處理「falsy」值。儘管如此,你可以(也應該,如果它解決了你的問題)選擇@BaijNR答案作爲接受的一個 –

回答

0

您可以console.log(gridSize)後開始添加在你的函數這一行:

gridSize = gridSize || 4; // If gridSize is null or not passed, default it as 4 or as required. 

我還沒有嘗試過,但認爲它會工作(因爲你需要相同的默認值)...

+0

謝謝@BaijNR這個作品... – NiruADV