js数据类型
一、js数据类型
1、typeof判断数据类型 var i=1;alert(typeof i) //number
2、number数字类型,可以进行+,-,*,/等运算(包括NaN)
3、string 字符串类型,例如var a=" abc ";
- 可以获取字符串的长度(字符串的长度包括空格) alert(a.length;) //5
- 获取某一个子字符串 alert(a.charAT(1)) //a
4、boolean布尔值:true,false
5、函数类型
6、object对象类型,可以添加自定义属性:window,document,数组,json,null(不可以添加自定义属性)
7、undefined未定义
二、数据类型转换
1、字符串转换成数字类型
(1)显式类型转化(强制类型转化):Number();parseInt();parseFloat();
var a="100";
var b="";
var c=true;
var d=function(){alert(1)};
var e=[];
var f=[123];
var g=[1,2,3];
var json={abc:123};
var h=null;
var i;(undefined);
- Number(a) //100
- Number(b) //0
- Number(c) //1
- Number(d) //NaN
- Number(e) //0
- Number(f) //123
- Number(g) //NaN
- Number(json) //NaN
- Number(h) //0
- Number(i) //NaN
var j="100px";
var k="12.34元"
- parseInt(j) //100 从左到右依次转换,适合转换带有数字的字符串,开头以+,-,*,/, ,也可以被转化
- Number(j) //NaN
- parseInt(k) //12
- parseFloat(k) //12.34 识别小数点
- parseInt(j,10) 10表示用10进制转
(2)隐式类型转化:-,*,/,%,++,--,>,<,!(取反),==,
alert("10">9) //true
alert("10">"9") //false
alert(!"ok") //false
alert("2"==2) //true
alert("2"===2) //false 没有隐式类型转化作用
(3)NaN:not a number 不是个数字的数字类型,一旦写程序中出现:NaN,肯定进行了非法的运算操作
- 作为if判断是false
- NaN与自己做比较结果为false alert(NaN==NaN) //false
isNaN 判断某些值是不是数字,不喜欢数字
- alert(isNaN(2));结果为false;
- alert(isNaN(我爱你));结果为true;
- alert(isNaN("250"));结果为false; 原理:先用Number()进行转化,结果为数字,isNaN为false;如果结果为NaN,isNaN为true;只讨厌数字,不是讨厌数字类型
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 25岁的心里话
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现