JS面试题解[‘1’, ‘7’, ’11’].map(parseInt) 输出

题目描述:给定数组 ['1', '7', '11'],执行 ['1', '7', '11'].map(parseInt),输出什么?

首先,让我们看看 map、parseInt 函数的用法和参数形式。

map 函数

map() 方法创建一个新数组,其结果是该数组中的每个元素都调用一个提供的函数后返回的结果。

arr.map(callback(currentValue[, index[, array]])[, thisArg])

parseInt 函数

parseInt() 函数解析一个字符串并返回一个整数。接收两个参数,其中第二个参数 radix 表示要解析的数字的基数。

parseInt(string, radix)

回答

执行代码:['1', '7', '11'].map(parseInt)

这段代码的执行过程可以拆分为以下两个步骤:

  1. parseInt 的第二个参数从 map 函数中取得。
  2. 对于数组中的每个元素,parseInt 都会被调用,并传递相应的参数。

在第一个回调函数中,'1', '7', '11' 分别作为第一个参数传入 parseInt 函数,并且传递其相应的索引值作为第二个参数(map 返回的已计算好的索引值):

// 第一次迭代:
parseInt('1', 0)  // 1
// 第二次迭代:
parseInt('7', 1)  // NaN
// 第三次迭代:
parseInt('11', 2) // 3

parseInt('7', 1) 的结果是 NaN。这是因为当基数为 1 时,无论数字如何,parseInt 都将无法解析出数字,并特别返回 NaN

所以输出结果是 [1,NaN,3]

示例:

console.log('1:', parseInt('1', 0)); // 1
console.log('2:', parseInt('7', 1)); // NaN
console.log('3:', parseInt('11', 2)); // 3

console.log(['1', '7', '11'].map(parseInt)); // [1,NaN,3]
<!--输出结果-->
1: 1
2: NaN
3: 3
[ 1, NaN, 3 ]

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JS面试题解[‘1’, ‘7’, ’11’].map(parseInt) 输出 - Python技术站

(0)
上一篇 2023年5月28日
下一篇 2023年5月28日

相关文章

  • 浅谈JSON.stringify()和JOSN.parse()方法的不同

    当我们需要在不同的系统或应用程序之间传递数据时,使用JSON(JavaScript Object Notation)是很常见的。JSON.stringify()和JSON.parse()是两个JavaScript内置函数,用于将JavaScript对象转换为JSON格式的字符串,以及将JSON格式的字符串转换回JavaScript对象。虽然它们的作用看起来相…

    JavaScript 2023年5月27日
    00
  • 通过js获取div的background-image属性

    获取 div 的背景图像属性有许多方法,以下是两种基本的方法: 方法一:使用 getComputedStyle() 方法 我们可以使用 getComputedStyle()方法获取到 div 的计算样式,从而获取到背景图像属性。以下是获取 div 的 background-image 属性的代码: const divEl = document.querySe…

    JavaScript 2023年5月19日
    00
  • Javascript前端经典的面试题及答案

    以下是“Javascript前端经典的面试题及答案”的完整攻略。 背景介绍 Javascript 是一门功能强大的编程语言,主要应用于前端开发和后端开发中,被广泛运用于 Web 应用程序中。因为 Javascript 语言特殊的运行机制和概念,Javascript 常常被用来考察前端开发者的能力和经验。 本文提供了一些 Javascript 来自于面试的经典…

    JavaScript 2023年5月27日
    00
  • javascript if条件判断方法小结

    下面为大家详细讲解“JavaScript if条件判断方法小结”的完整攻略。 1. if条件语句 if语句是JavaScript中最常用的条件判断语句。它的基本语法结构如下: if (condition) { // 如果condition为真,则执行这里的代码 } else { // 如果condition为假,则执行这里的代码 } 其中,condition…

    JavaScript 2023年6月10日
    00
  • 使用vue-router为每个路由配置各自的title

    针对如何使用vue-router为每个路由配置各自的title,可以按照以下完整攻略进行操作: 1.在路由中设置meta属性 首先在路由中设置meta属性,可以定义一个meta属性,用于存储每个路由的标题,具体代码如下: const routes = [ { path: ‘/’, name: ‘home’, component: Home, meta: { …

    JavaScript 2023年6月11日
    00
  • JavaScript与DOM组合动态创建表格实例

    下面我来详细讲解如何使用JavaScript与DOM组合动态创建表格实例。 简介 在Web开发中,表格是数据展示的常用形式之一,但是在页面中手动编写表格代码比较繁琐,因此我们可以使用JavaScript与DOM结合创建表格。 创建表格的步骤 1.创建表格元素 首先需要使用JavaScript创建表格元素,可以使用document.createElement方…

    JavaScript 2023年6月10日
    00
  • iframe 父窗口和子窗口相互的调用方法集锦

    当我们在网页中需要引用其他网页或第三方组件时,就可以使用iframe标签来嵌入其他页面。使用iframe标签可以让页面显得更加动态,同时也能添加一些新的功能。本文将详细讲解iframe父窗口和子窗口相互调用的方法。 iframe 的基本用法 在HTML中,使用iframe标签可以将一个网页嵌入到另一个网页中。 例如: <html> <hea…

    JavaScript 2023年6月10日
    00
  • 如何编写高质量JS代码

    当我们编写JavaScript代码时,我们应该注意一些最佳实践以确保代码的质量和可维护性。 以下是编写高质量JS代码的完整攻略: 1. 了解和遵循编码标准 良好的编码标准可以确保不同的人员在编写代码时都能够遵循相同的标准。这样可以使代码易于阅读和理解,也可以避免常见的错误。在JavaScript中,我们可以使用ESLint等工具来实现这一点。 示例说明: /…

    JavaScript 2023年5月27日
    00
合作推广
合作推广
分享本页
返回顶部