способ проверить наличие функции в документе и объекте window в скрипте#

#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"))