16、不消Number、parseInt和parseFloat和办法把"1"字符串转换成数字
function find (x, y) { for ( let i = 0; i < x.length; i++ ) { if ( x[i] == y ) return i;} return null;}let arr = [0,1,2,3,4,5]console.log(find(arr, 2))console.log(find(arr, 8))
结不雅到了函数式成了下面这个样子(似乎膳绫擎的那些代码鄙人面若影若现,不过又有点不太一样,为了消掉落if说话,让婷泊上去更像一个表达式,动用了 ? 号表达式):
//函数式的版本const find = ( f => f(f) ) ( f =>(next => (x, y, i = 0) =>( i >= x.length) ? null :( x[i] == y ) ? i :next(x, y, i+1))((...args) =>(f(f))(...args)))let arr = [0,1,2,3,4,5]console.log(find(arr, 2))console.log(find(arr, 8))
【编辑推荐】
- 外媒速递:JavaScript开辟者必须一试的十款卓越对象选项
- 开辟者最憎恶的编程说话:PHP、Ruby 躺着也中枪
- 外媒速递:正处于阑珊傍边的十大年夜编程趋势
- 百万开辟者查询拜访告诉你:法度榜样员最憎恶什么编程说话?
- 法度榜样员花1小时写JavaScript 常用办法总结
推荐阅读
云计算,不必细说谁都知道是什么,人们多若干少都有所耳闻。云计算是继20世纪80年代大年夜型计算机到C/S改变之后,IT界的又一次巨变,它经由过程互联网将某计算义务分布到大年夜量的计算机>>>详细阅读
本文标题:这些JavaScript编程黑科技,高逼格代码,让你惊叹不已
地址:http://www.17bianji.com/lsqh/38658.html
1/2 1