• ["1", "2", "3"].map(parseInt) 答案是多少?


    让我们先看看最直接最粗暴的方式

     没错,答案就是:[1, NaN, NaN],那为什么答案是[1, NaN, NaN]呢?

        1.让我们先了解一下map函数的定义

     JavaScript Array map() 方法

     定义和用法

      map() 方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。

      map() 方法按照原始数组元素顺序依次处理元素。

      注意: map() 不会对空数组进行检测。

      注意: map() 不会改变原始数组。

     


    因为 parseInt 需要两个参数 (val, radix), map 传了 3 (element, index, array)

      即原例子相当于

      [parseInt("1",0),parseInt("2",1),parseInt("3",2)]

            

      分析:

      按十进制转换输出1
      1不在2~36之间,输出NaN
      字符串"3"里面没有合法的二进制数,输出NaN
      所以最后结果是[1,NaN,NaN]
  • 相关阅读:
    通过存储过程的游标修改某个字段的全部数据
    spring cloud配置注册中心显示服务的ip地址和端口
    git几个必知托管平台
    hdu5790
    hdu5794
    hdu5739
    hdu5829
    线性规划初探
    bzoj4199
    bzoj4197
  • 原文地址:https://www.cnblogs.com/zhoudawei/p/7434828.html
Copyright © 2020-2023  润新知