Nível 8.4 do caderno de problemas JavaScript

Задание 1

Dado um botão e um bloco com texto. O texto em altura não cabe no bloco e está oculto. Ao clicar no botão, expanda o bloco para a altura total.

Задание 2

Dada uma string com texto. Obtenha a porcentagem de cada caractere do texto na forma de um objeto, em que as chaves serão os caracteres, e os valores - suas porcentagens.

Задание 3

Dada uma lista ul e um input. À medida que o texto é digitado no input, mantenha visíveis apenas aqueles li cujo texto começa com o texto inserido no input.

Задание 4

Exiba na tela a seguinte pirâmide:

1
22
333
4444
55555
666666
7777777
88888888
999999999
Задание 5

Dada uma lista de cidades e seus países, armazenada na seguinte estrutura:

javascriptlet data = [
  {
    country: 'country1',
    city:    'city11',
  },
  {
    country: 'country2',
    city:    'city21',
  },
  {
    country: 'country3',
    city:    'city31',
  },
  {
    country: 'country1',
    city:    'city12',
  },
  {
    country: 'country1',
    city:    'city13',
  },
  {
    country: 'country2',
    city:    'city22',
  },
  {
    country: 'country3',
    city:    'city31',
  },
]

Escreva um código que reformate a estrutura de dados para esta:

javascript{
  'country1': [
    'city11', 'city12', 'city13',
  ],
  'country2': [
    'city21', 'city22'
  ],
  'country3': [
    'city31', 'city32'
  ],
}