一道javascript数组操作题
题目如下:
var arr = ['100px','abc'-6,[],-98765,34,-2,0,'300',,function(){alert(1);}, null, document, [], true, '200px'-30, '23.45元', 5, Number('abc'), function(){alert(3);}, 'xyz'-90 ];
//1、找到arr里所有的数字:-98765, 34, -2, 0, 5
//2、找到可以转换成数字的:"100px", -98765, 34, -2, "300", "23.45元", 5
//3、把转换成数字以后,最大值判断出来:300
//4、把NaN所在的位置找出来:1, 14, 17, 19
1、找到arr里所有的数字:-98765, 34, -2, 0, 5
//1、找到arr里所有的数字:-98765, 34, -2, 0, 5
var num1 =[];
for(var i = 0 ;i<arr.length; i++){
//筛选出数字和能转换成数字的字符串
var re = /^(\-?)\d+$/;
if(re.test(arr[i]) && typeof(arr[i]) != 'string'){
num1.push(arr[i]);
} }
console.log(num1);
2、找到可以转换成数字的:"100px", -98765, 34, -2, "300", "23.45元", 5
//2、找到可以转换成数字的:"100px", -98765, 34, -2, "300", "23.45元", 5
var num2=[];
for(var j =0; j<arr.length; j++){
//parseInt解析一个字符串,并返回一个整数
if(parseInt(arr[j])){
num2.push(arr[j]);
}
}
console.log(num2);
3、把转换成数字以后,最大值判断出来:300
//3、把转换成数字以后,最大值判断出来:300 //假设最大值为数组的第一个元素,循环比对
var _max = num2[0];
for(var m=0; m<num2.length; m++){
if(_max < num2[m] ){
_max = num2[m];
} }
console.log(_max);
4、把NaN所在的位置找出来:1, 14, 17, 19
//4、把NaN所在的位置找出来:1, 14, 17, 19
var _index = [];
for(var n=0; n<arr.length; n++){
if(Number.isNaN(arr[n])){
_index.push(n);
}
}
console.log(_index);
查了资料才完成的,不用忘得好快啊
一道javascript数组操作题的更多相关文章
- RX学习笔记:JavaScript数组操作
RX学习笔记:JavaScript数组操作 2016-07-03 增删元素 unshift() 在数组开关添加元素 array.unshift("value"); array.un ...
- javascript数组操作(创建、元素删除、数组的拷贝)
这篇文章主要介绍了javascript数组操作,包括创建.元素的访问.元素删除.数组的拷贝等操作,还有其它示例,需要的朋友可以参考下 1.数组的创建 复制代码 代码如下: var arrayObj = ...
- JavaScript 数组操作函数--转载+格式整理
JavaScript 数组操作函数(部分)--转载+格式整理 今天看了一篇文章,主要讲的对常用的Js操作函数:push,pop,join,shift,unshift,slice,splice,conc ...
- Javascript数组操作
使用JS也算有段时日,然对于数组的使用,总局限于很初级水平,且每每使用总要查下API,或者写个小Demo测试下才算放心,一来二去,浪费不少时间:思虑下,堪能如此继续之?当狠心深学下方是正道. 原文链接 ...
- Javascript数组操作(转)
1.数组的创建 var arrayObj = new Array(); //创建一个数组 var arrayObj = new Array([size]); //创建一个数组并指定长度,注意不是上限, ...
- JavaScript 数组操作
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- javascript 数组操作 转
javascript之数组操作 1.数组的创建 var arrayObj = new Array(); //创建一个数组 var arrayObj = new Array([size]); //创建一 ...
- javascript数组操作汇总
javascript之数组操作 - 不悔的青春 - 博客园 1.数组的创建 var arrayObj = new Array(); //创建一个数组 var arrayObj = new Array( ...
- javaScript数组操作整理
一.js数组 1.创建数组: var arr = new Array();//创建没有元素空数组 var arr1 = new Array("value1","valeu ...
随机推荐
- Andriod 自定义控件之创建可以复用的组合控件
前面已学习了一种自定义控件的实现,是Andriod 自定义控件之音频条,还没学习的同学可以学习下,学习了的同学也要去温习下,一定要自己完全的掌握了,再继续学习,贪多嚼不烂可不是好的学习方法,我们争取学 ...
- Maven详解
一.前言 以前做过的项目中,没有真正的使用过Maven,只知道其名声很大,其作用是用来管理jar 包的.最近一段时间在项目过程中使用Maven,用Maven构建的web项目,其项目结构只停留在 ...
- SQL server学习
慕课网sql server学习 数据库第一印象:desktop--web server--database server** 几大数据库:sql server.oracle database.DB2. ...
- 从零自学Hadoop(18):Hive的CLI和JDBC
阅读目录 序 Hive CLI(old CLI) Beeline CLI(new CLI) JDBC Demo下载 系列索引 本文版权归mephisto和博客园共有,欢迎转载,但须保留此段声明,并给出 ...
- Mysql联合,连接查询
一. 联合查询 UNION, INTERSECT, EXCEPT UNION运算符可以将两个或两个以上Select语句的查询结果集合合并成一个结果集合显示,即执行联合查询.UNION的语法格式为 ...
- SSH批量部署服务
SSH批量部署服务 1.1在NFS上作为中心分发服务器将私钥分发到其他服务器上 1.1.1NFS部署 [root@nfs-server ~]# useradd zhurui [root@nfs-ser ...
- 用css改变默认的checkbox样式
自己常用的改变checkbox样式的两个方法: 一.利用background用图片代替checkbox效果 缺点:你首先得有一张好看的图片 优点:浏览器兼容性好 <!doctype html&g ...
- 【码在江湖】前端少侠的json故事(上)日月第一击
日月第一击 这是我前端生涯第一次和后台对接,其经历真是苦不堪言,多次绝处逢生,柳暗花明,可就是迟迟见不到那条村子.当然,最后我还是完成了这次对接.下面来聊一聊我这白痴一般的经历. 序章 话说天下大势, ...
- http status 301/302 & java重定向/转发
一.301/3021.什么是301转向?什么是301重定向? 301转向(或叫301重定向,301跳转)是当用户或搜索引擎向网站服务器发出浏览请求时,服务器返回的HTTP数据流中头信息(header) ...
- iOS CALayer应用详解
跟着大神一起进步,本篇博客原文地址:http://blog.csdn.net/hello_hwc?viewmode=contents 一 CALayer是什么? Layers是绘图和动画的基础, L ...