Показать сообщение отдельно
  #1 (permalink)  
Старый 08.05.2018, 17:17
Интересующийся
Отправить личное сообщение для AkezhanOb1 Посмотреть профиль Найти все сообщения от AkezhanOb1
 
Регистрация: 28.09.2017
Сообщений: 20

Почему splice не удаляет элемент
почему когда массив стоит внутри setInterval - a splice не удаляет элемента, а когда выводишь массив как глобальную перемену, все работает идеально?
var check = true

setInterval(function() {
  while(check) {
  var answ = prompt("What would you like to do?")
  var listAll = ["js", "node", "vue"]
  if(answ === "list") {
    listAll.forEach(function(el,pos,arr) {
      console.log(pos + ": " + el)
    })
  }if(answ === "quit"){
    check = false
   }if(answ === "del") {
     let pos = prompt("enter post") 
     listAll.splice(pos, 1)
   }
 }
},2000)


но стоит убрать объявление var listAll = ["js", "node", "vue"] в самое начало то все ок
var check = true
var listAll = ["js", "node", "vue"]
setInterval(function() {
  while(check) {
  var answ = prompt("What would you like to do?")
  if(answ === "list") {
    listAll.forEach(function(el,pos,arr) {
      console.log(pos + ": " + el)
    })
  }if(answ === "quit"){
    check = false
   }if(answ === "del") {
     let pos = prompt("enter post") 
     listAll.splice(pos, 1)
   }
 }
},2000)
Пожалуйста когда выводит prompt впишите с начало list а потом del и номер элемента
Ответить с цитированием