レベル 8.6 JavaScriptタスクブック

Задание 1

テキストを含む段落とボタンがあります。 ボタンをクリックして、各文字をランダムな色で塗りつぶしますが、 隣接する文字が異なる色になるようにしてください。

Задание 2

単語を含む段落と入力フィールドがあります。 入力フィールドに単語を入力します。 ボタンをクリックして、段落内でその単語を見つけ、 赤色で塗りつぶしてください。

Задание 3

リンクを含むメニューがあります。 アドレスバーのURLと一致するアドレスのリンクを 赤色で塗りつぶしてください。

Задание 4

次のピラミッドを画面に表示してください:

xxxxx
xxxx
xxx
xx
x
Задание 5

特定の日付のイベントリストが以下の構造で保存されています:

javascriptlet events = [
  {
    date:  '2019-12-29'
    event: 'name1'
  },
  {
    date:  '2019-12-31'
    event: 'name2'
  },
  {
    date:  '2019-12-29'
    event: 'name3'
  },
  {
    date:  '2019-12-30'
    event: 'name4'
  },
  {
    date:  '2019-12-29'
    event: 'name5'
  },
  {
    date:  '2019-12-31'
    event: 'name6'
  },
  {
    date:  '2019-12-29'
    event: 'name7'
  },
  {
    date:  '2019-12-30'
    event: 'name8'
  },
  {
    date:  '2019-12-30'
    event: 'name9'
  },
]

このデータ構造を以下のように変換するコードを書いてください:

javascript{
  '2019-12-29': ['name1', 'name3', 'name5', 'name7'],
  '2019-12-30': ['name4', 'name8', 'name9'],
  '2019-12-31': ['name2', 'name6'],
}