用栈翻转字符串

面试题

用栈翻转字符串

输入A1B2C3,返回3C2B1A

要求:只能用栈的 push pop 两个 API

技术要点

  • 栈 : 先进后出
  • 赋值操作是一种表达式,在条件语句中,只要赋值成功,则条件的求值结果就是true

参考答案

js 复制代码
function stackReverseStr(str) {
  let stack = [];
  for (const char of str) {
    stack.push(char);
  }

  let result = "";
  let newChar = "";

  while ((newChar = stack.pop())) {
    result += newChar;
  }

  return result;
}

let a = "A1B2C 3";

let b = stackReverseStr(a);

console.log(b); // 打印 3C2B1A
相关推荐
无咎.lsy1 分钟前
vue之vuex的使用及举例
前端·javascript·vue.js
fishmemory7sec9 分钟前
Electron 主进程与渲染进程、预加载preload.js
前端·javascript·electron
fishmemory7sec11 分钟前
Electron 使⽤ electron-builder 打包应用
前端·javascript·electron
豆豆1 小时前
为什么用PageAdmin CMS建设网站?
服务器·开发语言·前端·php·软件构建
JUNAI_Strive_ving1 小时前
番茄小说逆向爬取
javascript·python
看到请催我学习2 小时前
如何实现两个标签页之间的通信
javascript·css·typescript·node.js·html5
twins35202 小时前
解决Vue应用中遇到路由刷新后出现 404 错误
前端·javascript·vue.js
qiyi.sky2 小时前
JavaWeb——Vue组件库Element(3/6):常见组件:Dialog对话框、Form表单(介绍、使用、实际效果)
前端·javascript·vue.js
煸橙干儿~~2 小时前
分析JS Crash(进程崩溃)
java·前端·javascript
哪 吒2 小时前
华为OD机试 - 几何平均值最大子数(Python/JS/C/C++ 2024 E卷 200分)
javascript·python·华为od