文章目录
应用场景,双11订单并发存储进对应的服务器
方法一:使用reverse()
function reverseString(str){
return str.split('').reverse().join('')
}
方法二:模拟栈先进后出的原则(js并没有提供栈的结构)
function Stack(){
this.data = []; //保存栈内的元素
this.top = 0;//记录栈顶的位置信息
}
//在栈的原型链上添加方法
Stack.prototype = {
//入栈,栈顶加入元素,元素的个数发生改变
push:function push(element){
this.data[this.top++] = element;//入栈
}
//出栈,先返回栈顶的元素,元素的个数减一
pop:function(){
return this.data[--this.top];
}
//返回栈内的元素长度
length:function(){
this.top;
}
}
//然后通过自定义的函数调用栈在实现输出
function reverseString1(str){
//创建一个stack的实例
var s = new Stack()
//存储转换后的数据
var result = '';
//将字符串转成数组
var arr = str.split('');
//数组的长度
var len = arr.length;
//将元素压入栈内
for(var i=0;i<len;i++){
s.push(arr[i]);
//将元素输出
for(var j=0;j<len;j++){
result += s.pop(j);
}
return result;
}
var str = 'abcdefg';
console.log(reverseString1(str));
}