JavaScript学习日记-Day01:初认JavaScript

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

var age = 10; //这是数字型
var str = 'Hello World!'; //这是字符串型

在代码运行时,变量的数据类型是由JS引擎根据 = 右边变量的值的数据类型来确定的。
JavaScript拥有动态类型,同时也意味着相同的变量可用作不同的类型。

var x = 6; //x为数字型
var x = 'Bill'; //x为字符串型

JS把数据类型分为两类:

  • 简单数据类型:Number,String,Boolean,Undefined,Null
  • 复杂数据类型:object

数字型三个特殊值
infinity,代表无穷大,大于任何数值
-infinity,代表无穷小,小于任何数值
NaN,not a number,代表一个非数值

console.log(Number.MAX_VALUE * 2); //infinity 无穷大
console.log(-Number.MAX_VALUE * 2); //-infinity 无穷小
console.log('Hello' - 100); //NaN

isNaN() 这个方法用来判断非数字,并且返回一个值,如果是数字,返回的是false,如果不是数字,返回的是true

console.log(isNaN(12)); //false
console.log(isNaN('Hello')); //true

字符串转义符,都是以\开头的

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

字符串的拼接

  • 多个字符串之间可以使用 + 进行拼接,其拼接方式为 字符串 + 任何类型 = 拼接之后的新字符串
  • 拼接前会把字符串相加的任何类型转成字符串,再拼接成一个新的字符串
console.log('沙漠' + '骆驼'); // 沙漠骆驼
console.log('我今年' + 18); //我今年18
console.log('Hello' + true); //Hellotrue
console.log('12' + 12); //1212

布尔型
true参与加法运算当1来看
false参与加法运算当0来看

var flag = true;
var flag1 = false;
console.log(flag + 1); //2
console.log(flag1 + 1); //1

undefined 如果一个变量声明未赋值,就是undefined 未定义数据类型

var str;
console.log(str); //undefined
console.log(str + 1); //NaN
// null 空值
var space = null; //一个声明变量给null值,里面的值为空
console.log(space + 1); // 1

获取变量数据类型
typeof

var num = 10,
	str = 'Hello',
	flag = true,
	vari = undefined,
	timer = null;
console.log(typeof num); //number
console.log(typeof str); //string
console.log(typeof flag); //boolean
console.log(typeof vari); //undefined
console.log(typeof timer); //object
// prompt取的值是字符型的
var age = prompt('请输入您的年龄'); //18
console.log(age); //18
console.log(typeof age); //string

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

方式说明案例
toString()转成字符串var num = 1; alert(num.toString());
String()强制转换转成字符串var num = 1; alert(String(num));
加号拼接字符串和字符串拼接的结果都是字符串var num = 1; alert(num + ‘我是字符串’);
var num = 10;
console.log(typeof num.toString()); //String
console.log(typeof String(num)); //String
//利用 + 拼接字符串的方法 也称为隐式转换
console.log(num + ''); //String

转换为数字型

方式说明案例
parseInt()函数转换为整数数值类型parseInt(‘78’)
parseFloat()函数转换为浮点数数值类型parseFloat(‘78.21’)
Number()强制转换函数转换为数值型Number(‘12’)
JS 隐式转换(- * /)利用算术运算隐式转换为数值型‘12’ * 1
//parseInt() 可以把字符型转换为数字型 得到的是整数
console.log(parseInt('3.14')); // 取整  3
console.log(parseInt('3.94')); // 取整  3
console.log(parseInt('120px')); //120 会去掉px这个单位
console.log(parseInt('rem120px')); //NaN
//parseFloat() 可以把字符型转换为数字型 得到的是浮点数
console.log(parseFloat('3.14')); //3.14
console.log(parseFloat('120px')); //120 会去掉px这个单位
console.log(parseFloat('rem120px')); //NaN
//利用 Number(变量)
var str = '123';
console.log(Number(str)); //123
console.log(Number('12')); //12
//利用算术运算 -  *  /  隐式转换
console.log('12' - 0); //12 数值型
console.log('12' * 1); //12 数值型
console.log('123' - '120');//3 数值型

转换为布尔型

方式说明案例
Boolean()函数其他类型转换为布尔型Boolean(‘true’);

代表空、否定的值会被转换为false,如’ '、0、NaN、null、undefined
其余值都会被转换为true

console.log(Boolean('')); //false
console.log(Boolean(0)); //false
console.log(Boolean(NaN)); //false
console.log(Boolean(null)); //false
console.log(Boolean(undefined)); //false
console.log(Boolean('小白')); //true
console.log(Boolean(12)); //true
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值