如何反转在​​JavaScript中保存为字符串的数学表达式?

时间:2016-02-03 07:06:32

标签: javascript

假设一个字符串

var click="2+5-7%8" 

将被撤销成为

"8%7-5+2"

如何在Javascript中执行此操作?我正在尝试完成免费代码营计算器Zipline。

4 个答案:

答案 0 :(得分:0)

function r(s) {
  var txt = "";
  for(var i = s.length - 1; i >= 0; i--) {
    txt += s[i];
  }
  return txt;
}

var mathex = "2+5-7%8";

alert(r(mathex));

答案 1 :(得分:0)

您可以尝试这种方式:

<html>
<head>
    <title>Javascript String Reverse</title>
</head>
<body>

    <script>
    function strReverse(str){
        return str.split('').reverse().join('');
    }

    var click = "2+5-7%8";
    var revClick = strReverse(click);
    document.write("click = " + click + "<br>");
    document.write("revClick = " + revClick + "<br>");

    </script>
</body>
</html>

答案 2 :(得分:0)

This文章介绍了三种不同的方式:
* Array.reverse
*减少while循环
*递归

递归似乎是一种更好的方法。这就是为什么我会在这里列出它:

function reverseString(str) {
    return (str === '') ? '' : reverseString(str.substr(1)) + str.charAt(0);
}
reverseString('dwayne');

希望有所帮助

答案 3 :(得分:0)

这是一个简单的反向和连接解决方​​案。

str.split("").reverse().join("");