形如"123456789876543212345678987654321..." 的第 n 位是什么?

起初见到这个面试题就想用到循环去求解,但是仔细观察下

得到的规律为1234567898765432 总长为16位

即16次就会重复出现一次

所以想到用n和16进行取余 这样就可以取到对应的数

起初是这么实现的

var str='1234567898765432';

function getNums(n){

    return  str.charAt((n%16)-1);

};

但是这有个弊端就是在取0 16等 16的倍数的情况下会取不到相应的数值

因此还得对16的倍数进行处理  代码如下

var str='1234567898765432';

function getNums(n){

    return n%16==0?str.charAt((n%16)+1):str.charAt((n%16)-1)

};

小白一枚,欢迎指正.......

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容