#script#
#скрипт#
Вопрос:
Я пытаюсь преобразовать инструкции, которые проверяют наличие функций в объектах document и window, но я не нахожу какой-либо элегантной формы в ScriptSharp:
// Javascript expected result
if (document.getElementById)
// Current ScriptSharp
if (!Script.IsNullOrUndefined(Script.Literal("document.getElementById"))
Есть ли лучший способ, о котором я не подумал?
Если я сделаю что-то вроде:
if (Dictionary.GetDictionary(Document).ContainsKey("getElementById"))
Я получаю сообщение об ошибке, потому что Document — это тип, а не объект .. есть ли способ получить объект документа javascript?
Ответ №1:
Я бы рекомендовал использовать Type.HasField.
if (Type.HasField(typeof(Document), "getElementById")) { ... }
Ответ №2:
Измените его, чтобы использовать typeof
operator
if (Dictionary.GetDictionary(typeof(Document)).ContainsKey("getElementById"))