js---12数据类型,数据类型转换,NaN,
- <!DOCTYPE HTML>
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <title>无标题文档</title>
- <script>
- /*
- ECMAScript,标准、核心 :必须写var ,if后面跟小括号不是大括号,规定数据类型,
- HTML 标签类型:block、inline、inline-block、table……
- JS中的数据类型:数字、字符串、布尔、函数、对象(obj、[]、{}、null)、未定义
- typeof 判断数据类型
- */
- var i = 100;
- alert( typeof i ); // number
- var s = ' miaov ';
- alert( typeof s ); // string
- alert( s.length ); //
- alert( s.charAt(3) ); // 'a'
- var b = true; // 布尔值:true false
- alert( typeof b ); // boolean
- if ( true ) {}
- for ( ; false ; ) { }
- var fn = function (){ alert(1); };
- function fn1(){
- alert(2);
- }
- alert( fn1 );//弹出函数体
- fn1();
- var obj = document; //地址传递
- alert( typeof obj ); // object 物体、东西、对象
- obj.abc = 123;
- obj.onOff = true;
- obj.fn1 = function (){ alert(1); };
- alert( document.onOff ); //
- obj.fn1();//函数调用
- var arr = [ 1,2,3,4 ];
- alert( arr.length );
- arr[2] = 345;
- alert( arr );
- arr.push( 5,6,7 );//加入多个
- alert( arr );
- alert( typeof arr ); // object
- arr.abc = 999;//数组是object,数组也可以加属性
- arr.fn1 = function (){ alert('ok'); };
- alert( arr.abc );//
- arr.fn1();//函数调用
- var json = { name:'miaov', age:5 };
- alert( json.name + '今年' + json.age + '岁了' );
- alert( typeof json );//object
- var n = null;
- alert( typeof n );//object
- var u;
- alert( typeof u ); // undefined 未定义
- </script>
- </head>
- <body>
- </body>
- </html>
- <!DOCTYPE HTML>
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <title>无标题文档</title>
- //Number和parseInt可以处理小部分非数字,非数字太多就不行了。
- <script>
- var a = '+100'; //正100
- alert( a+100 ); // '100100'
- alert( Number(a) ); //
- var a1 = ' ';
- alert( Number(a1) ); //
- var a2 = true;
- alert( Number(a2) ); // true-1 false-0
- var a3 = [ 1 ];
- alert( Number(a3) ); // 1 0
- var a3 = [ ];
- alert( Number(a3) ); //
- var a4 = null;
- alert( Number(a4) ); //
- var b = ' 200px';
- alert( Number(b) );//NaN
- alert( parseInt(b) );//200 parseInt(b,10):按照10进制转换
- alert( parseInt('200px667677') );//200,只转前面的,
- alert( parseInt('+200px667677') );//200,
- var c = '12.34元';
- alert( parseInt(c) );//
- alert( parseFloat(c) );//12.34
- var num = '200.45';
- if( parseInt(num) == parseFloat(num) ){
- alert( num + '是整数' );
- }else{
- alert( num + '是小数' );
- }
- var json = {};
- alert( Number(json) );
- var u;
- alert( Number(u) );
- var a3 = function (){ alert(1); };
- alert( Number(a3) ); // NaN
- </script>
- </head>
- <body>
- </body>
- </html>
- <!DOCTYPE HTML>
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <title>无标题文档</title>
- <script>
- /*
- 显式类型转换(强制类型转换):
- Number()
- parseInt()
- parseFloat()
- 隐式类型转换:
- + 200 + '3' 变成字符串
- - * / % '200' - 3 变成数字197
- ++ -- var a='10';a--;alert(a) 9 变成数字
- > < alert('10'>9) true 转成10>9, alert('10'>'9') false 字符串的比较
- ! 取反 把右边的数据类型转成布尔值
- ==
- */
- alert( Number('……') ); NaN
- alert( '……'-9 ); NaN
- alert( '2' == 2 );//true
- alert( '2' === 2 );//false
- </script>
- </head>
- <body>
- </body>
- </html>
- <!DOCTYPE HTML>
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <title>无标题文档</title>
- <script>
- // JS中的数据类型:数字(NaN)、字符串、布尔、函数、对象(obj、[]、{}、null)、未定义
- var a = Number('abc');
- alert( a ); // NaN:not a number 不是个 数字 的 数字类型
- alert( typeof (a) ); // number
- // 一旦写程序中出现:NaN 肯定进行了非法的运算操作
- // alert( '200px' - 100 );
- // NaN 是 false
- if( a ){
- alert( '真' );
- }else{
- alert( '假' );
- }
- var abc = [];
- alert( abc === abc ); true
- // NaN 与自己都不相等!!
- alert( a === a ); // false
- </script>
- </head>
- <body>
- </body>
- </html>
- <!DOCTYPE HTML>
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <title>无标题文档</title>
- <script>
- isNaN();// 判断是不是数字,不喜欢数字,不是数字true,是数字false
- // 判断某些值是不是数字
- // 不喜欢数字、讨厌数字
- alert( isNaN( function(){ alert(1) } ) );//true
- alert( isNaN('250') );//false,调用Number() '250' => 250 => false
- alert( isNaN( [] ) );//false,调用Number()=>0
- </script>
- </head>
- <body>
- </body>
- </html>
- <!DOCTYPE HTML>
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <title>无标题文档</title>
- <script>
- window.onload = function (){
- var aInp = document.getElementsByTagName('input');
- var str = '';
- aInp[1].onclick = function (){
- str = aInp[0].value;// '123'
- // HTML 中拿到的内容,类型都是字符串,即使输入123,也是字符串
- alert( typeof str );//string
- if( isNaN(str) ){//调用Number('123')=>123,是数字。
- alert( str + '不是数字' );
- }else{
- alert( str + '是数字' );
- }
- };
- };
- </script>
- </head>
- <body>
- <input type="text" />
- <input type="button" value="判断输入值是不是数字" />
- </body>
- </html>
js---12数据类型,数据类型转换,NaN,的更多相关文章
- js | JavaScript中数据类型转换总结
转载 在js中,数据类型转换分为显式数据类型转换和隐式数据类型转换. 1, 显式数据类型转换 a:转数字: 1)Number转换: 代码: var a = “123”; a = Number(a); ...
- 【SpringMVC】SpringMVC系列12之数据类型转换、格式化、校验
12.数据类型转换.格式化.校验 12.1.数据绑定流程 Spring MVC 主框架将 ServletRequest 对象及目标方法的入参实例传递给 WebDataBinderFacto ...
- ECMAScript1.1 js书写位置 | 声明变量 | 基本数据类型 | 数据类型转换 | 操作符 | 布尔类型的隐式转换
js书写位置 由于在写css样式时使用的时双引号,所以我们在写js代码时建议使用单引号(‘’)! 行内式 <input type="button" value="点 ...
- JS 里的数据类型转换
JS的数据类型转换 一.js中的数据类型Js中的数据类型一共有六种,即number,string,boolean,underfine,null,object. 1.Number Number数据类型指 ...
- js注释和数据类型转换
单行注释 用来描述下面一个或多行代码的作用 // 这是一个变量var name = 'hm'; 多行注释 用来注释多条代码 /*var age = 18;var name = 'zs';console ...
- 2 Java基础语法(keyword,标识符,凝视,常量,进制转换,变量,数据类型,数据类型转换)
1:keyword(掌握) (1)被Java语言赋予特定含义的单词 (2)特点: 所有小写. (3)注意事项: A:goto和const作为保留字存在. B:类似于Notepad++这种高级记事本会对 ...
- java入门---基本数据类型之引用数据类型&数据类型转换
接着上一篇文章来,这次就先看看什么是引用数据类型?首先得满足以下条件: 在Java中,引用类型的变量非常类似于C/C++的指针.引用类型指向一个对象,指向对象的变量是引用变量.这些变量在声明时 ...
- js之数据类型及类型转换
一.数据类型 js中的数据类型: 5种基础类型:Undefined,Null,Boolean,Number,String 1种复合类型:Object(对象包括数组,函数等) 1 ...
- 剑指前端(前端入门笔记系列)—— JS基本数据类型及其类型转换
基本数据类型 ECMAScript中有5中简单数据类型性(也称为基本数据类型):Undefined.Null.Boolean.Number和String,还有一种复杂数据类型——Object,Obje ...
随机推荐
- java9新特性-4-模块化系统: Jigsaw与Modularity
1.官方Feature 200: The Modular JDK 201: Modular Source Code 220: Modular Run-Time Images 260: Encapsul ...
- Java类和对象11
首先,编写一个类ChongZai,该类中有3个重载的方法void print():其次,再编写一个主类来测试ChongZai类的功能. public class ChongZai { public v ...
- 走进ReactiveCocoa的世界
在学习ReactiveCocoa之前,先学习一下概念 ReactiveCocoa 是一套开源的基于Cocoa的FRP框架 .FRP的全称是Functional Reactive Programming ...
- Java 调用对象方法的执行过程
弄清调用对象方法的执行过程十分重要.下面是调用过程的详细描述: 1) 编译器查看对象的声明类型和方法名.假设调用x.f(param),且隐式参数x声明为C类的对象.需要注意的是:有可能存在多个名为f, ...
- iOS下调用元素的focus方法,input元素不聚焦,键盘不弹起的问题
页面元素 <input type="text" ref="elInput"/> <div style="margin-top:20p ...
- kolla-ansible 安装openstack 拉取阿里云镜像时报错
TASK [mariadb : Pulling mariadb image] ************************************************************ ...
- java 线程传参 方式
第一类:主动向线程传参 public class ThreadTest extends Thread { public ThreadTest() { } /** * 第一种通过构造方法来传递参数 ...
- 从终端运行python程序
终端窗口运行.py程序 首先你要安装python,命令行输入 python 有python提示符 >>> 出现说明安装成功 程序第一行应该是 #! python3 #! python ...
- [NOI2015]品酒大会(SA数组)
[NOI2015]品酒大会 题目描述 一年一度的"幻影阁夏日品酒大会"隆重开幕了.大会包含品尝和趣味挑战 两个环节,分别向优胜者颁发"首席品酒家"和" ...
- SpringMVC 常见异常处理
1.javax.xml.bind.UnmarshalException: unexpected element (uri:"", local:"request" ...