美文网首页
想办法把一个字符串13579先变成Array——[1, 3, 5

想办法把一个字符串13579先变成Array——[1, 3, 5

作者: 小y哥哥 | 来源:发表于2017-05-09 17:32 被阅读913次

    想办法把一个字符串13579先变成Array——[1, 3, 5, 7, 9],再利用reduce()就可以写出一个把字符串转换为Number的函数。

    练习:不要使用JavaScript内置的parseInt()函数,利用map和reduce操作实现一个string2int()函数:

    'use strict';

    function string2int(s) {

    return s.split('').map(
    function(x){
    return x.charCodeAt(0) - '0'.charCodeAt(0);
    }
    ).reduce(
    function(x, y){
    return x*10+y;
    }
    );
    }

    // 测试:
    if (string2int('0') === 0 && string2int('12345') === 12345 && string2int('12300') === 12300) {
    if (string2int.toString().indexOf('parseInt') !== -1) {
    alert('请勿使用parseInt()!');
    } else if (string2int.toString().indexOf('Number') !== -1) {
    alert('请勿使用Number()!');
    } else {
    alert('测试通过!');
    }
    }
    else {
    alert('测试失败!');
    }

    相关文章

      网友评论

          本文标题:想办法把一个字符串13579先变成Array——[1, 3, 5

          本文链接:https://www.haomeiwen.com/subject/cbritxtx.html