JS学习笔记---05 数据类型

数据类型

1、变量的数据类型

JS是一种弱类型或者说动态语言。这意味着不用提前声明变量的类型,在程序运行过程中,类型会被自动确定。

var age = 10;          //这是一个数字型
var areYouOk = '使得';  //这是一个字符串

在代码运行时,变量的数据类型是由JS引擎根据 = 变量值的数据类型来判断的,运行完毕后,变量就确定了数据类型。

JS 拥有动态类型,同时也意味着相同的变量可用作不同的类型:

var x = 6;              //x为数字
var x = "bill";			//x为字符串

2、数据类型的分类

JS 把数据类型分为两类:

  • 简单数据类型(Number、String、Boolean、Undefined、Null)
  • 复杂数据类型(object)

2.1、简单数据类型(基本数据类型)

JS中的简单数据类型及其说明如下:

简单数据类型说明默认值
Number数字型,包含 整型值和浮点型值,如21、0.210
String字符串类型,如“张三”, 注意 JS里面,字符串都带引号“ ”
Undefinedvar a; 声明了变量a 但没有赋值,此时a = Undefinedundefined
Boolean布尔值类型,如true、false,等价于1 和 0false
Nullvar a = null; 声明了变量a 为空值null

2.2、数字型 Number

1. 数字型进制

最常见的进制有二进制、八进制、十进制、十六进制

//1、八进制数字序列范围:0~7
var num1 = 07;       //对应十进制的7
var num2 = 019		 //对应十进制的19
var num3 = 08;		 //对应十进制的8
//2、十六进制数字序列范围:0~9以及A~F
var num = 0xA;

现阶段我们只需要记住,在JS中八进制前面加 0,十六进制前面加 0x

2.数字型范围

JS中数值的最大和最小值

alert(Number.MAX_VALUE);	//1.7976931348623157e+308
alert(Number.MIN_VALUE);	//5e-324
  • 最大值:Number.MAX_VALUE,这个值为:1.7976931348623157e+308
  • 最小值:Number.MIN_VALUE,这个值为:5e-324
3.数字型三个特殊值
alert(Infinity);	//Infinity
alert(-Infinity);	//-Infinity
alert(NaN);			//NaN
  • Infinity,代表无穷大,大于任何数值
  • -Infinity,代表无穷小,小于任何数值
  • NaN,Not a number,代表一个非数值
4.isNaN()

用来判断一个变量是否为非数字的类型,是数字–>返回 true, 不是数字—>返回 false

var usrAge = 21;
var isOk = isNaN(nserName);
console.log(isOk);			//flase
var usrName = "andy";
console.log(isNaN(userName));	//true

2.3、字符串型 String

字符串型可以是引号中的任意文本,其语法为双引号“ ” 和单引号‘ ’var

var strMsg = "我爱北京天安门~";	//使用双引号表示字符串
var strMsg2 = '我爱吃猪蹄';		 //使用单引号表示字符串
//常见错误
var strMsg3 = 我爱大肘子;		 //报错,没使用引号,会被认为是js代码,但js没有这些语法

因为 HTML 标签里面的属性使用的是双引号,JS这里我么更推荐使用单引号。

1.字符串引号嵌套

JS 可以用 单引号嵌套双引号,或者用 双引号嵌套单引号(外双内单,外单内双)

var strMsg = '我是"高富帅"程序猿';		//可以用''包含""
var strMsg2 = "我是'高富帅'程序猿";		//可以用""包含''
//常见错误
var badQuotes = 'What on earth?";	//报错,不能 单双引号搭配

1

2.字符串转义符

类似 HTML 里面的特殊字符,字符串中也有特殊字符,我们称之为转义符。

转义符都是\ 开头的,常用的转义符及其说明如下:

转义符解释说明
\n换行符,n是newline的意思
\\斜杠\
\’’ 单引号
\"" 双引号
\ttab 缩进
\b空格,b 是 blank 的意思

例:

var str1 = "我是一个'高富帅'的\n程序猿";
console.log(str1);

在这里插入图片描述

3.字符串的长度

字符串是由若干字符组成的,这些字符的数量就是字符串的长度。通过字符串的 length 属性可以获取整个字符串的长度。

var strMsg = "我是帅气的程序猿!";
alert(strMsg.length);	//显示9
4.字符串的拼接
  • 多个字符串之间可以使用 + 进行拼接,其拼接方式为 字符串 + 任何类型 = 拼接之后的新字符串
  • 拼接前会把字符串相加的任何类型转成字符串,再拼接成一个新的字符串
console.log('沙漠' + '骆驼');      //字符串的沙漠骆驼
console.log('yuyu' + 18);       //字符串的yuyu18

+号总结口诀:数值相加,字符相连

2.4、布尔型 Boolean

布尔类型有两个值:true 和 false,其中true表示真(对),而false表示假(错)。

布尔型和数字型相加的时候,true 的值为1,false 的值为0。

console.log(true + 1);		//2
console.log(false + 1);		//1

2.5、Undefined 和 Null

一个声明后没有被赋值的变量会有一个默认值 undefined (如果进行项链或者相加时,注意结果)

在这里插入图片描述
在这里插入图片描述

3、获取变量数据类型

3.1、获取检测变量的数据类型

typeof 可用来获取检测变量的数据类型

var num = 10;
console.log(typeof num);	//number
var str = 'pink';
console.log(typeof str);	//string
var timer = null;
console.log(typeof timer);	//object

4、数据类型转换

4.1、什么是数据类型转换

使用表单、prompt 获取过来的数据默认是字符串类型的,此时就不能直接简单的进行加法运算,而需要转换变量的数据类型。通俗来说,就是把一种数据类型的变量转换为另一种数据类型。

我们通常会实现3种方式的转换:

  • 转换为字符串类型
  • 转换为数字型
  • 转换为布尔型

4.2、转换为字符串

方式说明案例
toString()转成字符串var num = 1;alert(num.toString());
String()强制转换转成字符串var num = 1;alert(String(num));
加号拼接字符串和字符串拼接的结果都是字符串var num = 1;alert(num + “字符串”);
  • 第三种掌握

4.3、转换为数字型(重点)

方式说明案例
parseInt(string)函数将string类型转换成整数数类型parseInt(‘78’)
parseFloat(string)函数将string类型转换成浮点数数类型parseFloat(‘78.21’)
Number()强制转换函数将string类型转换成数值型Number(‘12’)
js隐式转换(- * /)利用算数运算隐式转换为数值型‘12’ - 0
  • 注意 parseInt 和 parseFloat 单词的大小写,这2个是重点
  • 隐式转换是我们在进行算数运算的时候,JS自动转换了数据类型

代码:

//1、parseInt(变量)  可以把字符型的转换为数字型  得到的是整数
console.log(parseInt('3'));		//3
console.log(parseInt('3.14'));		//3  取整
console.log(parseInt('120px'));		//120  会去掉这个px单位  
console.log(parseInt('rem120px'));		//NaN
//2、parseFloat(变量)  可以把字符型的转换为数字型  得到的是小数
console.log(parseInt('3.14'));		//3.14
console.log(parseInt('120px'));		//120  会去掉这个px单位  
console.log(parseInt('rem120px'));		//NaN
//3、利用 Number(变量)
var str = '123';
console.log(Number(str));		//数字型123
console.log(Number('12'));		//数字型 12
//4、利用了算数运算 - * / 隐式转换
console.log('12' - 0);		//数字型 12
console.log('123' - '120');	//数字型 3
console.log('123' * 1);	//数字型 123

4.4、转换为布尔型

方式说明案例
Boolean()函数其他类型转换成布尔值Boolean(‘true’);
  • 代表空、否定的值 会被转换为false,如‘ ’、0、NaN、undefined
  • 其余值都会被转换为true
    在这里插入图片描述
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
该资源内项目源码是个人的课程设计、毕业设计,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! ## 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。 该资源内项目源码是个人的课程设计,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! ## 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值