a
, b
, c
, в каждом из которых должны быть поля name
и surname
.age
, fathername
, sex
(пол)) так, что бы набор полей отличался у разных записейage
, fathername
, sex
) у каждого из этих массивов. Если поле найдено, выведите его с помощью alert
. Проверку делайте
с помощью typeof
или in
в if
.persons
, например a
,b
,c
. Так же добавьте персону литерально.
Получится обычный массив с элементами-ассоциативными массивами с персонами.persons
в форме объектов console.log(persons[i])
persons
, но только Имя и Фамилию каждой персоны. Используйте вложенный for
для вывода полей персоныpersons
, но только Имя и Фамилию каждой персоны. Используйте Object.keys
и вложенный for
для вывода полей персоныpersons
, при этом проверяет наличие других полей, и выводит дополнительные сообщения с этими полями.
typeof
в помощь.fullName
, содержащий ФИО. Учтите, что поле fathername
не является обязательным.persons
, в форме HTML-таблицы. Имя и Фамилияpersons
, в форме HTML-таблицы. Имя и Фамилия, а так же другие поля при наличии. Для решения этой задачи
вначале узнайте множество полей (ключей) во всех записях, выведите HTML-заголовок используя тэги <th>
, а потом выводите все записи.tr
.persons
в HTML с поиском всех возможных колонок во всех записях, выводом названий колонок в заголовок HTML-таблицы. Для решения этой задачи
вначале узнайте множество полей (ключей) во всех записях, выведите HTML-заголовок используя тэги <th>
, а потом выводите все записи.Сделать HTML-конструктор из деревянной структуры тэгов:
var someTree = {
tag: "table", //html tag
nestedTags: [ //вложенные тэги
{
tag: "tr",
nestedTags: [
{
tag: "td",
content: "some text",
},
{
tag: "td",
content: "some text 2",
}
]
}
],
options:
{
border: 1,
},
}
Для начала сделайте конструктор для верхнего уровня (в примере - table
). Потом с помощью копипасты сделайте то же самое с вложенным уровнем nestedTags
(tr
).
Аналогично для уровня td
.
Конструктор должен поддерживать вложенность до 3его уровня (как в примере). В результате работы конструктора из примера выше должен получиться следующий
HTML(в строке str
):
<table border=1>
<tr>
<td>some text</td>
<td>some text 2</td>
</tr>
</table>
Переносы строк и отступы в результате не принципиальны, главное - структура HTML
Сделать предыдущее задание на черный пояс в упрощенном виде: не использовать четырехмерный массив для хранения истории, а использовать ассоциативный массив:
Например, если пользователь ввел 1212
за последние четыре хода, то мы ищем то, что было введено последний раз после такой последовательности:
var history = "1212"
var predictValue = predictArray[history] // в predictValue то, что ввел последний раз пользователь после нажатий 1212
var newValue = prompt("введите 1 или 2","");
predictArray[history] = newValue //сохраняем новый ввод
//сдвигаем историю