1_js中的变量讲解
什么是变量:经常改变的量。
变量是程序在内存中申请的一块用来存放数据的空间。
变量由变量名和变量值组成,通过变量名可以访问变量的值。
回顾:Java的变量名的命名规则:
1.不能以数字开头
2.不能使用关键字(Java或JavaScript中自带的相关属性或方法。)
3.严格区分大小写
4.只能够由 数字 字母 下划线 $ 符号组成
5.见名知意 例如age name 而不是 a b c d
6.推荐使用驼峰命名法,例如studentName
正课:JS的变量名的命名规则,和Java完全一致。
下面哪个变量名式合法的。
number 合法、
88shout 不合法,数字开头
myScore 合法
&num 不合法
var 不合法 关键字
it123 合法 但是不推荐
$tuition 合法
常见的关键字:
if else switch for class
do while case break contiue
return default new var void
预留关键字:现在还没有自带,但是未来有,已经提前预留了。
implements package public interface
2_js如何声明变量
扫盲: var 是varible(翻译:变量) 的缩学
回顾:Java是如何声明变量的: 数据类型 变量名 = 变量值 ;
js如何声明变量: var 变量名 = 变量值 ;
潜台词:不管JS是什么数据类型,都用var.
JS中声明变量的2种方式:
①先声明再赋值.例如:
var num ;
num = 10;
②声明的同时也赋值,例如:
var age = 20;
3_交换两个变量值的案例
案例需要:自定义2个变量,要求让他们两个变量进行互换
幻想成现实生活:张三和李四都拿了一个箱子,并且不能放在地上需要完成箱子的交换.
做法:喊第三个人帮忙.把张三的箱子给第三个人,然后张三拿李四的箱子.,李四就拿第三个人箱子.
var a1 = 100;
var a2 = "张三";
var a3 = a1;
a1 = a2;
a2 = a3;
console.log(a1);
console.log(a2);
4_javascript中的数据类型
回顾:Java中的数据类型分类:
A.基本数据类型
B.引用数据类型
新课:JS同上,完全一致。
回顾:
Java中的基本数据类型:
1字节:byte boolean
2字节:char short
4字节: int float
8字节:long double
Java中的引用数据类型:
String 数组(Array) 任何Class,不管是你写的类还是JAVA自带的类。
JavaScript的基本数据类型:
number 注意:number是数据类型但不是关键字
string 注意:string在java是引用,在JS是基本
boolean
null
undefined
bigint
symbol
JavaScript的引用数据类型:
数组 Object 函数(方法) 等等
5_JS的基本数据类型讲解
boolean读布尔
js的boolean和java的boolean完全一致
体现在:都是基本数据类型 都只有true和false
意义:用程序表示一件事成功或者失败,或表示一个条件成立或不成立。
JavaScript中严格区分大小写,因此true和false值只有全部为小写时才表示布尔型。
js中的number(读数值类型)讲解
一句话总结:即可以存放小数,也可以存储整数
var a = 123;
var b = 12.5;
a和b都是number类型.没有加引号
js中的string(读字符类型)讲解
这里要注意:
js的String和java的String不同之处1:
string在java是引用,在JS是基本
js的String和java的String不同之处2:
string在java中通过双引号声明
string在js 中既可以通过双引号也可以通过单引号声明
例如:
var str1 = "你好";
var str2 = '我好';
以上都是string的写法
null 表示空的意思 例如:
var str = null;
null的注意事项:没有任何属性或方法可言
undefined 表示未定义的意思 只声明了变量但是未赋值
例如:
var str123 ;//这个str123就是undefined
bigint 翻译:大数值
如果存在需求需要计算很大很大(不用去记,因为很大。)数字,那么number将无法实现
例如:下面的number绰绰有余
var num1 = 1111111;
var num2 = 2222222;
console.log(num1+num2);
var num1 = 11111111111111111111;//number
var num2 = 11111111111111111111;//number
console.log(num1+num2);//计算结果出现了误差
所以就需要借助于bigint
bigint类声明方法:
var num3 = 1111111111111111111n;//只需要在最后加n即可
var num4 = 1111111111111111111n;//只需要在最后加n即可
console.log(num3+num4);
symbol讲解:略 常用于独一无二的对象
6.常见转义符
如下图。
7. 如何判断一个变量是什么类型
语法: typeof xxx 返回是一个数据类型
var str = 123;
console.log( typeof str);//number
str = "123";
console.log( typeof str);//string
8.数据类型转换
为什么要学习数据类型转换?见一下例题:
var num1 = prompt("请输入第一个数");
var num2 = prompt("请输入第二个数");
alert("两数之和为" + (num1 + num2));//这种写法是错误的
原因:prompt返回的是一个string类型,两个string类型相加,是以拼接的形式
如何将字符串转成number类型.
js提供了下面三个方法,各有区别,都要掌握
parseInt()
parseFloat()
Number()
parseInt 将一个字符串类型的数字解析成整数
alert( parseInt("11.12") );//11
alert( parseInt("11.99") );//11 总结1小数后面直接省略,不会四舍五入
alert( parseInt("11.a12") );//11 总结2小数后面直接省略
alert( parseInt("11a.a12") );//11 总结3:解析顺序从左到右,解析到非数字就停止.
alert( parseInt("1a1a.a12") );//1 总结4:只需要记住总结3
alert( parseInt("a11a.a12") );//NaN NAN 翻译: not a numnber 不是一个数字
parseFloat()和上面的语法完全一致,唯一区别保留小数
console.log( parseFloat("11.11") );//11.11
console.log( parseFloat("11.11a") );//11.11
console.log( parseFloat("11.1a1a") );//11.1
console.log( parseFloat("11a.11") );//11
console.log( parseFloat("a11.11") );//NAN
console.log( parseFloat("11.a") );//11
Number()只能将真正的数字解析
console.log( Number("11.11") );//11.11
console.log( Number("11") );//11
console.log( Number("11") );//NAN