javascript学习3
javascript数据类型、函数传参
- javascript语言核心:ECMAScript
- 定义js的语法:基本对象、数据类型
- js的数据类型
- typeof运算符 判断数据类型
- 字符串、数字、布尔、函数、对象(obj、[]、{}、null)、未定义(undefined)、数组、null...
- 数据类型使用原则:一个变量只存放一种类型数据
- typeof运算符 判断数据类型
- 数据类型转换
- 数据类型转换
- Number、parseInt、parseFloat
<script type="text/javascript">
var a1='';
var a2=' ';
var a3=[];
var a4=null;
var a5=[1]; var a6=[1,2,3];
var json={json};
var a7=Number(json);
var a8=function(){alert(1)}
var a9; console.log(Number(a1));//0
console.log(Number(a2));//0
console.log(Number(a3));//0
console.log(Number(a4));//0
console.log(Number(a5));//1 console.log(Number(a6));//NaN
console.log(a7);//NaN
console.log(Number(a8));//NaN
console.log(Number(a9));//NaN
</script> <script type="text/javascript">
var a1='+200px';
var a2='-200px';
var a3='200px12345';
var a4='000000200px12345'; console.log(parseInt(a1));//200
console.log(parseInt(a2));//-200
console.log(parseInt(a3));//200
console.log(parseInt(a4));//200
</script>- 实例:两个输入框相加
- 实例:判断输入值是否为小数
- Number、parseInt、parseFloat
- 隐式类型转换
- + = * / % < > == ! ++ --
- 数据类型转换
- 数据类型转换不成功
- 数字类型:NaN详解
- not a number不是个数字的数字类型
- 一旦写程序中出现NaN,肯定进行了非法的运算操作
- 特点:
- 非数字的数字类型
- false
- NaN!=NaN
- 数字类型:NaN详解
- 检测数字的方法:isNaN
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script type="text/javascript">
window.onload=function(){
var aLnp=document.getElementsByTagName('input');
var str='';
aLnp[1].onclick=function(){
str=aLnp[0].value;
//Html中拿到的内容,类型都是字符串
//alert(typeof str);
if(isNaN(str)){
alert(str+'不是数字');
}else{
alert(str+'是数字');
}
}
}
</script>
</head>
<body>
<input type="text" />
<input type="button" value="判断输入值是不是数字"/>
</body>
</html>
- 例子说明
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, 0, '300', '23.45元', 5
3、把转成数字以后,最大值判断出来:300
4、把 NaN 所在的位置找出来:1 14 17 19
*/- 答案1
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>无标题文档</title>
<script src="http://www.jq22.com/jquery/jquery-1.9.1.js"></script>
<script>
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]; var numArr=[];
$(function(){
for(var i=0;i<arr.length;i++){
if(typeof arr[i]==='number' && !isNaN(arr[i])){
numArr.push(arr[i]);
}
}
console.log(numArr);//[-98765, 34, -2, 0, 5]
});
</script>
</head>
<body>
</body>
</html> - 答案2
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>无标题文档</title>
<script src="http://www.jq22.com/jquery/jquery-1.9.1.js"></script>
<script>
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]; var numArr=[];
$(function(){
for(var i=0;i<arr.length;i++){
if('number' && parseFloat(arr[i])){
numArr.push(arr[i]);
}
}
console.log(numArr);//["100px", -98765, 34, -2, "300", "23.45元", 5]
}); /* parseFloat(0) ----> 0 但是结果里面0没有输出来 不知道原因 知道的可以告诉我一下*/</script>
</head>
<body>
</body>
</html> - 答案3
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>无标题文档</title>
<script src="http://www.jq22.com/jquery/jquery-1.9.1.js"></script>
<script>
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]; var numArr=[];
$(function(){
var index=0;
for(var i=0;i<arr.length;i++){
if(arr[index] < arr[i]){
index = i;
if(!isNaN(arr[i])){
numArr += 'number' && parseFloat(arr[i]);
}
}
}
console.log(numArr);//300
});
</script>
</head>
<body>
</body>
</html> - 答案4
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>无标题文档</title>
<script src="http://www.jq22.com/jquery/jquery-1.9.1.js"></script>
<script>
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]; var numArr=[];
$(function(){
for(var i in arr){
if(typeof arr[i] === 'number' && isNaN(arr[i])){
numArr += i+ '、';
}
}
console.log(numArr);//1、14、17、19、
});
</script>
</head>
<body>
</body>
</html>
javascript学习3的更多相关文章
- JavaScript学习(一) —— 环境搭建与JavaScript初探
1.开发环境搭建 本系列教程的开发工具,我们采用HBuilder. 可以去网上下载最新的版本,然后解压一下就能直接用了.学习JavaScript,环境搭建是非常简单的,或者说,只要你有一个浏览器,一个 ...
- Web编程基础--HTML、CSS、JavaScript 学习之课程作业“仿360极速浏览器新标签页”
Web编程基础--HTML.CSS.JavaScript 学习之课程作业"仿360极速浏览器新标签页" 背景: 作为一个中专网站建设出身,之前总是做静态的HTML+CSS+DIV没 ...
- JavaScript学习(3):函数式编程
在这篇文章里,我们讨论函数式编程. 什么是函数式编程?根据百度百科的描述,“函数式编程是种编程典范,它将电脑运算视为函数的计算.函数编程语言最重要的基础是 λ 演算(lambda calculus). ...
- JavaScript学习(2):对象、集合以及错误处理
在这篇文章里,我们讨论一下JavaScript中的对象.数组以及错误处理. 1. 对象 对象是JavaScript中的一种基本类型,它内部包含一些属性,我们可以对这些属性进行增删操作. 1.1 属性 ...
- JavaScript学习13 JavaScript中的继承
JavaScript学习13 JavaScript中的继承 继承第一种方式:对象冒充 <script type="text/javascript"> //继承第一种方式 ...
- JavaScript学习12 JS中定义对象的几种方式
JavaScript学习12 JS中定义对象的几种方式 JavaScript中没有类的概念,只有对象. 在JavaScript中定义对象可以采用以下几种方式: 1.基于已有对象扩充其属性和方法 2.工 ...
- JavaScript学习11 数组排序实例
JavaScript学习11 数组排序实例 数组声明 关于数组对象的声明,以前说过:http://www.cnblogs.com/mengdd/p/3680649.html 数组声明的一种方式: va ...
- JavaScript学习10 JS数据类型、强制类型转换和对象属性
JavaScript学习10 JS数据类型.强制类型转换和对象属性 JavaScript数据类型 JavaScript中有五种原始数据类型:Undefined.Null.Boolean.Number以 ...
- JavaScript学习09 函数本质及Function对象深入探索
JavaScript学习09 函数本质及Function对象深入探索 在JavaScript中,函数function就是对象. JS中没有方法重载 在JavaScript中,没有方法(函数)重载的概念 ...
- JavaScript学习08 Cookie对象
JavaScript学习08 Cookie对象 JavaScript Cookie Cookie对象: Cookie是一种以文件的形式保存在客户端硬盘的Cookies文件夹中的用户数据信息(Cooki ...
随机推荐
- 剑指offer-调整数组顺序使奇数位于偶数前面13
题目描述 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变. class Solu ...
- python基础训练营06
任务六 时长: 啥是佩奇代码复现 参考链接:https://mp.weixin.qq.com/s/whtJOrlegpWzgisYJabxOg 画一只佩奇: 代码: from turtle impor ...
- 详谈P(查准率),R(查全率),F1值
怎么来的? 我们平时用的精度accuracy,也就是整体的正确率 acc = predict_right_num / predict_num 这个虽然常用,但不能满足所有任务的需求.比如,因为香蕉太多 ...
- Struts2—整合Spring
Struts2—整合Spring Spring框架是一个非常优秀的轻量级java EE容器,大部分javaEE应用,都会考虑使用Spring容器来管理应用中的组件. Struts2是一个MVC框架,是 ...
- URAL 1936 Roshambo(求期望)
Description Bootstrap: Wondering how it's played? Will: It's a game of deception. But your bet inclu ...
- Windows下LATEX排版论文攻略—CTeX、JabRef使用心得
笔者刚刚接触到TEX排版,相关知识完全空白,用了两天时间学习并完成了一篇论文的完整排版. 期间遇到不少小问题,着实辛苦,分享至上,现将其解决办法总结归纳,共同学习. 一.工具介绍 TeX是一个很好排版 ...
- c#和html方法互调
具体见连接:https://www.cnblogs.com/zeroLove/p/3912460.html
- DataGridView加载gif图片
当我们想加载图片时,一般情况下都会使用picturebox控件,这个控件可以加载各种格式的图片,当然也包括gif图片.但是有时,我们也希望一些数据展示控件也可以加载图片,比如说DataGridView ...
- java线程(1)——三种创建线程的方式
前言 线程,英文Thread.在java中,创建线程的方式有三种: 1.Thread 2.Runnable 3.Callable 在详细介绍下这几种方式之前,我们先来看下Thread类和Runnabl ...
- JavaScript中的String对象详解
1.属性 String对象最常用的属性是length,用于返回字符串对象的长度. 2.方法 CharAt(index) 返回字符串对象中指定索引号组成的字符串,位置的有效值为0到字符串的长度减1. ...