Я беспокоюсь о соединении в одной из моих асинхронных функций, в результате чего другая функция выдает ошибку в такой ситуации:
var sharedObject = [{key: 'foo', value: {varA: 1, varB: 5}}]
readObject: function(key) {
var index = findIndex(sharedObject, key) <- line 4
var b = sharedObject[index].value.varB <- line 5
}
spliceObject: function(key) {
var index = findIndex(sharedObject, key)
sharedObject.splice(index,1) <- line 10
}
Если функции readObject и spliceObject вызываются асинхронно, и строка10 выполняется прямо между строкой 4 и строкой 5, выдаст ли строка 5 ошибку, потому что эта запись в объекте больше не существует?
Или я что-то упускаю из-за того, как выполняются асинхронные функции?