Javascript: Как вы можете получить один элемент из массива и сделать из него строку - PullRequest
0 голосов
/ 13 апреля 2011

Я новичок в javascript и пробовал что-то в упражнении для школы.

У меня есть массив с некоторыми элементами JavaScript.

Это массив:

var testObjecten = [
    window.walkTheDog,
    window.focus,
    document.images,
    document.layers,
    document.all,
    document.getElementById,
    document.getElementsByTagName,
    document.styleSheets,
    document.createElement,
    document.createTreeWalker,
    document.implementation.createDocument,
    window.ActiveXObject,
    window.XMLHttpRequest
    ];

Моя цель - проверить их на наличие поддержки в браузере и вернуть да или нет.Я знаю, как добиться правильного результата, но я не могу сделать некоторые вещи, необходимые для этого.

Я создал таблицу с Javascript.В первой части таблицы должен присутствовать TextNode с полным именем элемента.Поэтому я пытался преобразовать элемент в строку, но это не похоже на работу.

Я знаю, что вы можете преобразовать массив в одну большую строку с помощью объединения, но как вы можете сделать это с помощью элемента?

Также по смежному вопросу: если бы тот же массив содержал строки с элементами выше (с "" вокруг них), все еще можно было бы проверить их?

Ответы [ 3 ]

0 голосов
/ 13 апреля 2011
for(var i=0; i<testObjecten.length;i++){
  if(testObjecten[i]==null){
     alert("not Supported");
  }
}

объекты автоматически преобразуются в строку с помощью метода toString ().

вы можете сохранить имена ваших элементов в отдельном массиве с такими же индексами и затем вывести его.

0 голосов
/ 13 апреля 2011

Я не совсем уверен, что вы пытаетесь, но это может помочь.

var testObjecten = {
    "window.walkTheDog": window.walkTheDog,
    "window.focus": window.focu,
    ...
};

var names = [];
for (var key in testObjecten) {
   o.push(key);
}

document.createTextNode(names[i]);

Проблема с попыткой использовать toString заключается в том, что вы получаете такие вещи, как HTMLElement или другие данные, которые вам на самом деле не нужны. Я полагаю, вы хотели напечатать строки "window.walkTheDog" и т. Д.

Нет простого способа получить эти данные, не имея где-нибудь физических строк.

0 голосов
/ 13 апреля 2011

Я знаю, что вы можете преобразовать массив в одну большую строку с помощью объединения, но как вы можете сделать это с помощью элемента?

Javascript также знает метод '.toString ()'. Возможно, это сработает.

Также по смежному вопросу: если бы тот же массив содержал строки с элементами выше (с "" вокруг них), было бы все еще возможнопроверить с ними?

В Javascript существует метод '.eval ()'.Этот примитив, но очень мощный.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...