Работа с массивами, не работает метод slice 
		
		
		
		Прочитал про метод slice на сайте Javascript https://learn.javascript.ru/array-methods. Не правильно выводит массив. 
	Вот код: 
<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>Тест</title>
 </head>
 <body>  
<p id="result"></p>
    <script>
let arr = ["Я", "изучаю", "JavaScript", "прямо", "сейчас", "помни", "это"];
arr.slice(-4);
for(let i = 0; i<arr.length; i++){
result.innerHTML += i + " - " + arr[i] + '<br>'}
 
  </script>
 </body>
</html>
arr.slice(-4); Должна с 4-го элемента, считаем с конца массива, так как там минус 4. Это элемент прямо. Должно вывести со слова прямо до конца все элементы. А выводит все элементы полностью. Если изменить код на такой: 
<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>Тест</title>
 </head>
 <body>  
<p id="result"></p>
    <script>
let arr = ["Я", "изучаю", "JavaScript", "прямо", "сейчас", "помни", "это"];
let rez = arr.slice(-4);
for(let i = 0; i<rez.length; i++){
result.innerHTML += i + " - " + arr[i] + '<br>'}
 
  </script>
 </body>
</html>
произойдет вывод только первых 4-х элементов, но правило гласит если -4, с конца считаем 4 -ый элемент и выводим все элементы до конца, но выводится почему-то элементы сначала, 0 - Я 1 - изучаю 2 - JavaScript 3 - прямо вместо такого вывода: "прямо", "сейчас", "помни", "это" Второй пример: Если я захочу скопировать с какого-то элемента массива по какой-то. Например со 2-го элемента по 5. И напишу такой код: 
<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>Тест</title>
 </head>
 <body>  
<p id="result"></p>
    <script>
let arr = ["Я", "изучаю", "JavaScript", "прямо", "сейчас", "помни", "это"];
let rez = arr.slice(2,5);
for(let i = 0; i<rez.length; i++){
result.innerHTML += i + " - " + arr[i] + '<br>'}
 
  </script>
 </body>
</html>
arr.slice(2,5); Не происходит копирования, происходит вывод непонятно чего, а вывод такой в итоге: 0 - Я 1 - изучаю 2 - JavaScript хотя я эти элементы не выбирал вообще, а выбирал эти: "изучаю", "JavaScript", "прямо", "сейчас",  | 
	
		
 denis_alekss, 
	1 код строка 12 бесполезная, результат нигде не сохраняется. 2 код ошибка в строке 14. 3 та же ошибка.  | 
	
		
  
	Я выводил не новый массив, а старый, в этом был залет. Поменял на строку result.innerHTML += i + " - " + rez[i] + '<br>'} Вроде как заработал вывод. Только есть момент. Если к написать вот так: 
<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>Тест</title>
 </head>
 <body>  
<p id="result"></p>
    <script>
let arr = ["Я", "изучаю", "JavaScript", "прямо", "сейчас", "помни", "это"];
let rez = arr.slice(-3);
for(let i = 0; i<rez.length; i++){
result.innerHTML += i + " - " + rez[i] + '<br>'}
 
  </script>
 </body>
</html>
Вывод правильный, с конца массива стартует вывод с третьего элемента по последний: 0 - сейчас 1 - помни 2 - это Ели поменять эту строку: let rez = arr.slice(-3); [Нажмите и перетащите, чтобы переместить] на let rez = arr.slice(2,5); Вывод такой: 0 - JavaScript 1 - прямо 2 - сейчас Но должен произойти вывод со 2-го элемента по 5, но происходит вывод со второго по 4-ый элемент, почему? 2 элемент массива: "JavaScript", 3 элемент массива: "прямо", 4 элемент массива: "сейчас", 5 элемент массива: "помни", 5 -ый элемент, слово помни не выводит.   | 
	
		
 Цитата: 
	
 Цитата: 
	
 Цитата: 
	
  | 
| Часовой пояс GMT +3, время: 13:43. |