Encontrar elementos descendientes en JavaScript

firstElementChildlastElementChildchildren
Задание 1

Dado el elemento #elem:

html<ul id="elem">
  <li>text</li>
  <li>text</li>
  <li>text</li>
  <li>text</li>
  <li>text</li>
</ul>

Encuentra el primer descendiente de este elemento y haz que su texto sea de color rojo.

Задание 2

Dado el elemento #elem:

html<ul id="elem">
  <li>text</li>
  <li>text</li>
  <li>text</li>
  <li>text</li>
  <li>text</li>
</ul>

Encuentra el último descendiente de este elemento y haz que su texto sea de color rojo.

Задание 3

Dado el elemento #elem:

html<ul id="elem">
  <li>text</li>
  <li>text</li>
  <li>text</li>
  <li>text</li>
  <li>text</li>
</ul>

Encuentra todos los descendientes de este elemento y agrega el texto '!' al final.