2015-08-25 40 views
2
  1. 任何人都可以解釋!checkDate(date)[0]是什麼意思?
  2. 這是真的,功能checkDate(date)通過javascript日期對象作爲參數?這是否是JavaScript對象在作爲參數傳遞時不需要初始化的情況?

是什麼了checkdate(日期)[0]是什麼意思?

$("form").on("submit",function(event) { 
var date; 
try { 
    date = $.datepicker.parseDate("mm/dd/yy", $("#date").val()); 
} catch (error) { } 
if (!date) { 
    event.preventDefault(); 
    alert("Please provide a valid date."); 
} 
if (date && !checkDate(date)[0]) { 
    event.preventDefault(); 
    alert("Cannot select a weekend or Tuesday for Dr.Smith."); 
} 
}); 

function checkDate(date) { 
    var isWeekday = date.getDay() > 0 && date.getDay() < 6; 
    if ($("#doctor").val() === "Smith") { 
    return [isWeekday && date.getDay() != 2]; 
    } else { 
    return [isWeekday]; 
    } 
}; 

回答

2
  1. checkDate()返回一個數組。 checkDate(date)[0]返回數組的第一個元素。在這種情況下,如果true日期是工作日(而不是一個星期二,如果是史密斯博士)

  2. checkDate()接收一個Date作爲其唯一參數。那Date從上面的代碼被傳入,它被初始化爲$.datepicker.parseDate()

4
  1. !checkDate(date)[0]

    • checkDate()返回一個數組,含有單個元件,這是一個布爾值。

    • checkDate()[0]將訪問該布爾元素。

    • !checkDate()[0]否定該布爾元素(換句話說,如果布爾是true,上述表達式的結果將是false,並且反之亦然)。
  2. checkDate()接受JavaScript Date對象,因爲它的參數是。