为了账号安全,请及时绑定邮箱和手机立即绑定

关于js算法题

关于js算法题

蝴蝶刀刀 2018-09-04 13:22:45
var p1 = getMiddle("test"); //es    var p2 = getMiddle("testing"); //t    var p3 = getMiddle("middle"); //dd    var p4 = getMiddle("A"); //A        function getMiddle(str){            return str.substr(Math.ceil(str.length / 2 - 1) , str.length % 2 == 0 ? 2 : 1);        }        console.log(p1);        console.log(p2);        console.log(p3);        console.log(p4);如果是字符串是偶数的话,返回中间2个字母,如果奇数的话返回中间一个字母,问题:这里的str.length / 2 为什么要-1?
查看完整描述

1 回答

?
有只小跳蛙

TA贡献1824条经验 获得超8个赞

因为索引号是从0开始算的。。。

比如字符串length=2
Math.ceil(str.length / 2 - 1) => Math.ceil(0) => 0 即从索引号0开始截取
比如字符串length=3
Math.ceil(str.length / 2 - 1) => Math.ceil(0.5) => 1 即从索引号1开始截取


查看完整回答
反对 回复 2018-10-18
  • 1 回答
  • 0 关注
  • 573 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号