用栈翻转字符串

面试题

用栈翻转字符串

输入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
相关推荐
努力敲代码呀~1 分钟前
前端高频面试题2:浏览器/计算机网络
前端·计算机网络·html
高山我梦口香糖22 分钟前
[electron]预脚本不显示内联script
前端·javascript·electron
神探小白牙23 分钟前
vue-video-player视频保活成功确无法推送问题
前端·vue.js·音视频
Angel_girl3191 小时前
vue项目使用svg图标
前端·vue.js
難釋懷1 小时前
vue 项目中常用的 2 个 Ajax 库
前端·vue.js·ajax
Qian Xiaoo1 小时前
Ajax入门
前端·ajax·okhttp
爱生活的苏苏2 小时前
vue生成二维码图片+文字说明
前端·vue.js
拉不动的猪2 小时前
安卓和ios小程序开发中的兼容性问题举例
前端·javascript·面试
炫彩@之星2 小时前
Chrome书签的导出与导入:步骤图
前端·chrome
贩卖纯净水.2 小时前
浏览器兼容-polyfill-本地服务-优化
开发语言·前端·javascript