当前位置:网站首页>【JS面试题】面试官:“[1,2,3].map(parseInt)“ 输出结果是什么?答上来就算你通过面试
【JS面试题】面试官:“[1,2,3].map(parseInt)“ 输出结果是什么?答上来就算你通过面试
2022-07-31 05:08:00 【m0_67401920】
还在担心面试不通过吗?给大家推荐一个超级好用的刷面试题神器:牛客网,里面涵盖了各个领域的面试题库,还有大厂真题哦!
赶快悄悄的努力起来吧,在这里衷心祝愿各位大佬都能顺利通过面试。
面试专栏分享,感觉有用的小伙伴可以点个订阅,不定时更新相关面试题:面试专栏 。
文章目录
??前言
前端面试中我们可能遇到很多种有趣的面试题,就比如标题这种。对于这种问题,我们一定不能慌,要冷静分析一下。
首先我们要掌握map
方法和parseInt
函数的作用,才能去知道这个问题的输出结果,如果不是很熟练的话,就跟着我的思路学习一下吧。
??正文
1. map()
方法
map()
方法创建一个新数组,其结果是该数组中的每个元素都调用一个提供的函数后返回的结果。
语法:
var new_array = arr.map(function callback(currentValue[, index[, array]]) {
// Return element for new_array
}[, thisArg])
参数
callback
:生成新数组元素的函数,使用三个参数:currentValue
:callback
数组中正在处理的当前元素。index
可选:callback
数组中正在处理的当前元素的索引。array
可选:map
方法调用的数组。
thisArg
可选:执行callback
函数时值被用作this
。
返回值
回调函数的结果组成了新数组的每一个元素。
代码示例
const arr = [1,2,3,4]
const result = arr.map(function(num){
return num+2
})
console.log(result)// [ 3, 4, 5, 6 ]
上述示例代码想得到的效果是:遍历arr中的元素,返回每个元素值加2的结果
2. parseInt()
函数
parseInt(string, radix)
将一个字符串string
转换为radix
进制的整数,radix
为介于2-36之间的数。
语法
parseInt(string, radix);
参数
- string:要被解析的值。如果参数不是一个字符串,则将其转换为字符串(使用 ToString 抽象操作)。字符串开头的空白符将会被忽略。
- radix:一个介于2和36之间的整数(数学系统的基础),表示上述字符串的基数。比如参数 10 表示使用十进制数值系统。始终指定此参数可以消除阅读该代码时的困惑并且保证转换结果可预测。当未指定基数时,不同的实现会产生不同的结果,通常认为其值默认为10,但是如果你的代码运行在过时的浏览器中,那么请在使用时总是显式地指定 radix。
返回值
返回解析后的整数值。 如果被解析参数的第一个字符无法被转化成数值类型,则返回 NaN。
注意:radix参数为n 将会把第一个参数看作是一个数的n进制表示,而返回的值则是十进制的。例如:parseInt(‘123’, 5) // 将’123’看作5进制数,返回十进制数38 => 1_5^2 + 2_5^1 + 3*5^0 = 38
描述
parseInt 函数将其第一个参数转换为字符串,解析它,并返回一个整数或NaN。如果不是NaN,返回的值将是作为指定基数(基数)中的数字的第一个参数的整数。
代码示例
parseInt("546", 2); //NaN 除了“0、1”外,其它数字都不是有效二进制数字
parseInt("F", 16); // 15
parseInt(4.7, 10); // 4
parseInt(11,8); // 9 => 1*8+1
3. 题目详解来咯
我们一步步来现将数组与map
原题
const result = [1, 2, 3].map(parseInt)
console.log(result)
题目拆解
// 首先新建一个nums数组存我们的三个数组
const nums = [1, 2, 3]
// 将nums数组用map方法进行遍历返回parseInt函数处理后的值
const result = nums.map((item, index) => {
/*
item:1,index:0
item:2,index:1
item:3,index:2
*/
return parseInt(item, index)
// parseInt(1,0) radix值为0,表示没有,默认使用十进制,返回 1
// parseInt(2,1) 不满足radix范围2-36,返回 NaN
// parseInt(3,2) 二进制不会出现3这个值,所以返回NaN
})
console.log(result) // [1,NaN,NaN]
所以这道题的答案就是 [1,NaN,NaN],你做对了吗?
??文末
名 言 警 句 : 说 能 做 的 , 做 说 过 的 extcolor{red} {名言警句:说能做的,做说过的} 名言警句:说能做的,做说过的
原 创 不 易 , 还 希 望 各 位 大 佬 支 持 一 下 extcolor{blue}{原创不易,还希望各位大佬支持一下} 原创不易,还希望各位大佬支持一下
?? 点 赞 , 你 的 认 可 是 我 创 作 的 动 力 ! extcolor{green}{点赞,你的认可是我创作的动力!} 点赞,你的认可是我创作的动力!
收 藏 , 你 的 青 睐 是 我 努 力 的 方 向 ! extcolor{green}{收藏,你的青睐是我努力的方向!} 收藏,你的青睐是我努力的方向!
评 论 , 你 的 意 见 是 我 进 步 的 财 富 ! extcolor{green}{评论,你的意见是我进步的财富!} 评论,你的意见是我进步的财富!
先自我介绍一下,小编13年上师交大毕业,曾经在小公司待过,去过华为OPPO等大厂,18年进入阿里,直到现在。深知大多数初中级java工程师,想要升技能,往往是需要自己摸索成长或是报班学习,但对于培训机构动则近万元的学费,着实压力不小。自己不成体系的自学效率很低又漫长,而且容易碰到天花板技术停止不前。因此我收集了一份《java开发全套学习资料》送给大家,初衷也很简单,就是希望帮助到想自学又不知道该从何学起的朋友,同时减轻大家的负担。添加下方名片,即可获取全套学习资料哦
边栏推荐
- SQL statement to range query time field
- TOGAF之架构标准规范(一)
- Go language study notes - dealing with timeout problems - Context usage | Go language from scratch
- 三道leetcode上的oj题
- 1. Get data - requests.get()
- View source and switch mirrors in two ways: npm and nrm
- MySQL常见面试题汇总(建议收藏!!!)
- Centos7 install mysql5.7 steps (graphical version)
- 12 reasons for MySQL slow query
- 剑指offer专项突击版第15天
猜你喜欢
mysql5.7.35安装配置教程【超级详细安装教程】
Open Source Database Innovation in the Digital Economy Era | 2022 Open Atom Global Open Source Summit Database Sub-Forum Successfully Held
The MySQL database installed configuration nanny level tutorial for 8.0.29 (for example) have hands
MySQL开窗函数
Numpy中np.meshgrid的简单用法示例
MySQL(更新中)
The monitoring of Doris study notes
Lua,ILRuntime, HybridCLR(wolong)/huatuo热更新对比分析
matlab simulink欠驱动水面船舶航迹自抗扰控制研究
ERROR 1819 (HY000) Your password does not satisfy the current policy requirements
随机推荐
DVWA shooting range environment construction
ES source code API call link source code analysis
ERROR 2003 (HY000) Can't connect to MySQL server on 'localhost3306' (10061)Solution
SQL行列转换
MySQL database addition, deletion, modification and query (detailed explanation of basic operation commands)
MySQL忘记密码怎么办
Reference code series_1. Hello World in various languages
Sql解析转换之JSqlParse完整介绍
Typec手机有线网卡网线转网口转接口快充方案
The 15th day of the special assault version of the sword offer
ERP Production Operation Control Kingdee
[Linear Neural Network] softmax regression
Information System Project Manager Core Test Site (55) Configuration Manager (CMO) Work
1. 获取数据-requests.get()
可点击也可直接复制指定内容js
参考代码系列_1.各种语言的Hello World
[C language] Detailed explanation of operators
sql语句-如何以一个表中的数据为条件据查询另一个表中的数据
Mysql应用安装后找不到my.ini文件
C Implementation of Simple Network File Copy