前端面试常见问题——字符串反转
2017-10-29 16:00
274 查看
这道题呢,来源于一篇文章,《如何准备一次技术面试》,它以作为面试官的角度讲了一些技术面试的小技巧。
大家应该也都知道技术面试中对于基础知识的考察,总是从一些基本的问题,层层深入。
字符串反转就是一个面试的常见问题。这是我最初的解法,当然也是大部分人的解法:
这段代码并没有问题,但并不是一个好的答案。这个时候面试官大多会引导面试者去优化他,去完善他,或者能否提供更好的解决方案。如果能够在提供多种方案,并能够比较优劣的话,将会是一次比较好的面试。
那么还有哪些比较好的解法呢?
1、 数组、字符串的常用方法:
2、 For循环性能及如何优化:Javascript中for循环语句的几种写法总结对比
3、 递归函数主要注意的问题:递归实现的方法及注意事项
4、 函数式编程:函数式编程初探
大家应该也都知道技术面试中对于基础知识的考察,总是从一些基本的问题,层层深入。
字符串反转就是一个面试的常见问题。这是我最初的解法,当然也是大部分人的解法:
//解法一 function reverse(str){ for(var i=0;i<str.length;i++){ newstr=str.charAt(i)+newstr; } return newstr; } console.log(reverse(str));
这段代码并没有问题,但并不是一个好的答案。这个时候面试官大多会引导面试者去优化他,去完善他,或者能否提供更好的解决方案。如果能够在提供多种方案,并能够比较优劣的话,将会是一次比较好的面试。
那么还有哪些比较好的解法呢?
//解法二 function reverse(str){ if(str.length===1){ return str } return str.slice(-1)+reverse(str.slice(0,-1)); } console.log(reverse(str));
//解法三 function reverse(str) { return str.split('').reduce((prev, next) => next + prev); } console.log(reverse(str));
//解法四 function reverse(str) { return str .split('') .reverse() .join('') } console.log(reverse(str));
1、 数组、字符串的常用方法:
2、 For循环性能及如何优化:Javascript中for循环语句的几种写法总结对比
3、 递归函数主要注意的问题:递归实现的方法及注意事项
4、 函数式编程:函数式编程初探
相关文章推荐
- 前端面试常见问题汇总
- 常见的字符串面试问题(二)
- 前端开发常见的面试问题
- 面试问题之 按单词反转字符串
- 也谈前端面试常见问题之『数组乱序』
- web前端面试常见问题三------浮动原理和清除浮动
- 关于前端面试中的一些常见问题-CSS(欢迎补充)
- 前端面试中的常见的算法问题
- 前端面试中常见的算法问题读后整理
- 面试中常见链表问题7:反转链表2
- java面试笔试题,字符串反转问题
- 前端面试中的最常见的算法问题
- 面试问题之 按单词反转字符串
- 前端面试中常见的算法问题总结
- 自己总结的一些关于前端和php的面试中的常见的问题
- 前端面试中的常见的算法问题
- 前端面试中常见的算法问题
- 前端面试中的常见的算法问题
- 前端面试中的常见的算法问题
- 前端面试中的常见的算法问题