Операция peek в стеке с использованием javascript Как я могу получить первый элемент из моего стека вот мой код var stack = []; stack.push(id1); stack.push(id2); Я знаю, что в java есть что-то вроде peek. Есть ли подобный метод в JS, с помощью которого я могу получить самый верхний элемент? Ответ 1 Чтобы проверить верхний элемент, к сожалению, вы должны явно индексировать его var top = stack[stack.length-1]; синтаксис stack[-1] (который будет работать на Python) не работает: отрицательные индексы действительны только как параметры для вызова slice. // The same as stack[stack.length-1], just slower and NOT idiomatic var top = stack.slice(-1)[0]; Чтобы извлечь элемент, тем не менее pop: // Add two top-most elements of the stack var a = stack.pop(); var b = stack.pop(); stack.push(a + b); Ответ 2 var stack = []; stack.push("id1"); stack.push("id2"); console.log(stack[stack.length-1]); // the top element console.log(stack.length); //size Ответ 3 Если вам нужен только один край вашего стека (голова или хвост не имеет значения), используйте его в обратном порядке, тогда: peek() становится array[0], unshift(v) становится push() shift() становится pop() некоторый код: class Stack{ constructor(... args ){ this.store = [... args.reverse()]; } peek(){ return this.store[0]; } push(value){ return this.store.unshift(value); } pop(){ return this.store.shift(); } } const stack = new Stack(1,2,3); stack.push(4); console.log(stack.peek()); stack.pop(); console.log(stack.peek()) Ответ 4 peek() используется для возврата верхнего элемента из стека. Он не изменяет стек, он просто возвращает элемент для информационных целей. Ответ 5 var stack = []; stack.push("id1"); stack.push("id2"); var topObj = stack[0] console.log(topObj)
Ответ 1 Чтобы проверить верхний элемент, к сожалению, вы должны явно индексировать его var top = stack[stack.length-1]; синтаксис stack[-1] (который будет работать на Python) не работает: отрицательные индексы действительны только как параметры для вызова slice. // The same as stack[stack.length-1], just slower and NOT idiomatic var top = stack.slice(-1)[0]; Чтобы извлечь элемент, тем не менее pop: // Add two top-most elements of the stack var a = stack.pop(); var b = stack.pop(); stack.push(a + b);
Ответ 2 var stack = []; stack.push("id1"); stack.push("id2"); console.log(stack[stack.length-1]); // the top element console.log(stack.length); //size
Ответ 3 Если вам нужен только один край вашего стека (голова или хвост не имеет значения), используйте его в обратном порядке, тогда: peek() становится array[0], unshift(v) становится push() shift() становится pop() некоторый код: class Stack{ constructor(... args ){ this.store = [... args.reverse()]; } peek(){ return this.store[0]; } push(value){ return this.store.unshift(value); } pop(){ return this.store.shift(); } } const stack = new Stack(1,2,3); stack.push(4); console.log(stack.peek()); stack.pop(); console.log(stack.peek())
Ответ 4 peek() используется для возврата верхнего элемента из стека. Он не изменяет стек, он просто возвращает элемент для информационных целей.
Ответ 5 var stack = []; stack.push("id1"); stack.push("id2"); var topObj = stack[0] console.log(topObj)