Когда JavaScript возвращается пустой и неопределенный?

Если нет сильного преимущества при запуске вашей пользовательской формы в Excel, тогда я бы выбрал решение 100% -ного доступа, которое экспортировало бы отчеты и данные в Excel на специальной основе.

Из того, что вы описываете, Access кажется более сильным конкурентом, поскольку он создан для работы с данными :
у вас будет гораздо больше инструментов для решения любых проблем с данными, чем нужно обойти ограничения Excel и сделать из них Access ...

Что касается ваших вопросов:

  1. Очень просто. На эту тему были некоторые другие вопросы по SO.
    Смотрите, например, этот и этот .

  2. Не знаю, но я предполагаю, что может быть небольшой штраф.
    Самая большая трудность, которую я вижу, - это попытаться получить все функциональные возможности, которые предоставляет вам Access, и заново создать некоторые из них в Excel.

  3. Да, у вас может быть несколько пользователей Excel и одна база данных Access.
    Здесь снова использование Access в качестве внешнего интерфейса и хранение данных в связанной базе данных Access в вашей сети будет более разумным, и это просто, как пирог, в Access даже есть мастер, который поможет вам сделать это: это всего лишь 1 щелкните мышью .

На самом деле, как сказал большинство других людей, для ознакомления с Access потребуется совсем немного времени, это сэкономит вам много времени и хлопот.
Возможно, вы лучше знаете Excel, но если вы уже прошли 80% пути, если вы знаете VBA и знакомы с объектной моделью Office.

Другие преимущества использования в Access: среда выполнения Access 2007 является бесплатной , а это означает, что если вы развернете приложение на 1 или 30 ПК, это будет стоить вам столько же: ничего [ +1123].
Для разработки вам нужна только одна полная версия Access (у Runtime нет дизайнеров).

18
задан Yves M. 29 October 2014 в 11:09
поделиться

4 ответа

alert (sam); // возвращает undefined

Нет, это исключение

Вы получаете undefined при доступе к неустановленному свойству; при прямом использовании неустановленного имени возникает ошибка.

Глобальные переменные интересны тем, что к ним можно получить доступ либо с помощью простого имени переменной, либо с помощью свойств глобального объекта window :

alert(window.sam);      // undefined
alert(window['sam']);   // undefined
alert('sam' in window); // false
alert(sam);             // ERROR

Если sam объявлен, но не инициализирован, при доступе к window.sam вы все равно получите undefined , но по другой причине: есть запись в window для sam , но он указывает на тот же объект undefined , который вы получаете, когда получаете доступ к несуществующему свойству.

var sam;
alert(window.sam);      // undefined
alert(window['sam']);   // undefined
alert('sam' in window); // ** true
alert(sam);             // ** undefined

Это, конечно, сбивает с толку. беспорядок; undefined - одна из худших ошибок при разработке языка JavaScript.

null , с другой стороны, прекрасен и работает почти так же, как значения null / nil / void / None в Другие языки. Это не входит ни в одно из вышеперечисленных.

14
ответ дан 30 November 2019 в 09:03
поделиться
<script type="text/javascript">
// variable with an unasigned value
var a;
if (a == undefined) {
  alert('a is undefined');
}

if (a == null) {
  alert('a is undefined');
}

// this will produce an error
if (b == undefined) {
  alert('b is undefined');
}

// this is the right way to handle not defined variables
if (typeof(c) == 'undefined') {
  alert('c is blabla');
}
</script>
2
ответ дан 30 November 2019 в 09:03
поделиться

Чтобы переменная получила нулевое значение, ей необходимо присвоить значение. null используется для указания неизвестного значения или значения «безразлично». undefined , с другой стороны, предназначен для указания того, что свойство, к которому осуществляется доступ, никогда не получало значения. Это отличается от null .

С null кто-то намеренно говорит: «Я еще не знаю, какое это значение должно иметь» или «Мне все равно, какое это значение. сейчас". OTH в undefined действительно говорит: «Вы уверены, что должны использовать это значение, которому оно не назначено?»

2
ответ дан 30 November 2019 в 09:03
поделиться

Я различаю их следующим образом: undefined означает «Я не определил это значение», а значение null означает «Я определил это значение, но я не знаю или не могу понять, какое значение должно быть. быть. "

1
ответ дан 30 November 2019 в 09:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: