дата возврата JavaScript не определена - PullRequest
0 голосов
/ 19 июня 2011

я заставляю его отображать время в javascript, но когда оно возвращает время, оно всегда не определено.ниже приведен код

я не совсем уверен, почему он всегда возвращает неопределенное значение.

$('#bar #time').html(hours + ":" + minutes + " " + suffix);


var currentTime = new Date()
var hours = currentTime.getHours()
var minutes = currentTime.getMinutes()

//decides if am or pm
var suffix = "AM";
if (hours >= 12) {
    suffix = "PM";
    hours = hours - 12;
}
if (hours == 0) {
    hours = 12;
}

// shows 0 before the minutes if under 10
if (minutes < 10)
minutes = "0" + minutes

Ответы [ 4 ]

3 голосов
/ 19 июня 2011

гм, если код в таком порядке, вам просто нужно поставить первую строку в конце, так как hours, minutes и suffix все не определены в этой точке. Кроме того, он должен работать нормально (и для каждой консоли Chrome).

1 голос
/ 19 июня 2011

Не совсем относится к вашему актуальному вопросу, но $('#bar #time') будет довольно неэффективным селектором jQuery.Поскольку идентификаторы используются только один раз в вашем документе, поиск просто по $('#time') даст вам тот же результат и потребует от движка JavaScript только один раз запускать document.getElementById вместо двух.упоминая.

0 голосов
/ 19 июня 2011
$(document).ready(function(){


var currentTime = new Date()
var hours = currentTime.getHours()
var minutes = currentTime.getMinutes()

//decides if am or pm
var suffix = "AM";
if (hours >= 12) {
    suffix = "PM";
    hours = hours - 12;
}
if (hours == 0) {
    hours = 12;
}

// shows 0 before the minutes if under 10
if (minutes < 10)
minutes = "0" + minutes

    $('#bar').html(hours + ":" + minutes + " " + suffix);

});

Порядок, в котором вы печатаете переменные, имеет значение,

они не были определены при печати. ​​

0 голосов
/ 19 июня 2011

Здесь нет точек с запятой

var currentTime = new Date()
var hours = currentTime.getHours()
var minutes = currentTime.getMinutes()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...