变量
定义一个变量我们需要用到两个关键字let和var
使用格式
let 变量名 = 内容;
var 变量名 = 内容;
使用演示
let a=10;
var b=20;
此关键字除了能定义数字类型之外,也能定义其他类型,给什么内容定义什么类型
这里我们一般都使用let来定义变量,let比var少更多缺陷
console
console是控制台的意思,console的各个参数可以给我提供查看变量信息的功能
使用格式
console.log(变量名)
演示代码
<script>
a=1;
console.log(a);
</script>
查看结果我们需要在展示网页按F12找到控制台
演示结果
这里的这个1就是console.log控制台显示的效果
当然console还有其它的接口,但是我们这里只需要学习这一个就可以了
alert
alert可以在网页中显示我们需要输出的信息
使用格式
alert(内容)
演示代码
<script>
a=1;
alert("我的数字是"+a);
</script>
演示结果
这里我们可以看到,alert也支持'+',可以通过'+'将其它变量连接起来输出
prompt
prompt用于网页弹窗提示用户输入信息
使用格式
变量名=prompt("需要提示的信息")
演示代码
<script>
a=prompt("请输入你的数字")
alert("我的数字是"+a);
</script>
演示结果
动态类型
动态类型的变量可以通过赋值直接改变变量的类型
我们JS中变量大部分都是动态类型,而C++和JAVA大部分都是静态类型
演示代码
<script>
a=15;
alert("我的数字是"+a);
a="Microsoft"
alert("我的字符是"+a);
</script>
演示结果
这里的a类型从number类型转换到了string类型,但是这中操作在C++/Java中是不允许的
基本数据类型
类型介绍
属性 | 描述 |
number | 数字,不区分整数和浮点数 |
boolean | true为真,false为假 |
string | 字符串类型 |
undefined | 未定义的变量 |
null | 只有唯一的值null |
演示代码
<script>
let a=15;
let b=3.14;
let c="Microsoft"
let d=true;
console.log(typeof(a));
console.log(typeof(b));
console.log(typeof(c));
console.log(typeof(d));
console.log(typeof(f));
</script>
在控制台中查询演示结果
这里分别对应这五种变量的属性
数字不同进制表示
进制的格式
let a=015; //八进制以0开头
let b=0xff; //十六进制以0x开头
let c=0b111; //二进制以0b开头
但是有些JS的语法是不允许0开头的八进制,这里我们只演示十六进制和二进制
演示代码
<script>
let b=0xff;
let c=0b111;
console.log(b);
console.log(c);
</script>
演示结果
这里我们显示的值对应了两种进制方式
特殊的数字值
Infinity:表示超出了JS的最大数字范围的正值
-Infinity:表示超出了JS的最大数字范围的负值
NAN:表示当前结果不是一个数字
Number.MAX_VALUE
表示JS的最大数值
演示代码
<script>
let a=Number.MAX_VALUE;
let b=Number.MIN_VALUE;
console.log(a*2);
console.log(b*2);
console.log("ABCDEF"-10);
</script>
演示结果
string字符串类型
直接用字符串赋值就可以定义类型
赋值格式
<script>
let a="abcdefg";
let b='DSADD';
let c=dsadsda;
</script>
双引号和单引号都可以赋值,但是不能使用直接赋值
引号存在解决方法
演示代码
// let a="my name is "gch"";
let b="my name is \"gch\"";
let c="my name is 'gch'";
let d='my name is "gch"';
console.log(b);
console.log(c);
console.log(d);
其中第一行是错误的,不能直接在引号里面加相同的引号
其中第二行用了\可以将引号转义
第三行和第四行都是使用不同的引号
length
length是string的接口可以用来返回字符串的长度
演示代码
<script>
let b="my name is gch";
console.log(b.length);
</script>
演示结果
字符串拼接
字符串可以和字符拼接也可以和数字拼接
演示代码
<script>
let a="Hello,World";
let b="!!!";
let c=10;
console.log(a+b);
console.log(b+c);
console.log(a+b+c);
</script>
演示结果
boolean布尔类型
boolean的true等于1,而false等于0,这里和C++/Java是相同的
演示代码
<script>
console.log(true+1);
console.log(false+1);
</script>
演示结果
undefined未定义字符类型
当变量设置了但是没有定义,那么它的类型就是undefined
演示代码
<script>
let a;
console.log(a);
console.log(a+"!!!");
console.log(a+10);
</script>
演示结果
这里的a的类型为undefined,如果加上字符串,那么它就是字符串类型,如果加上数字,那么它就是NAN类型
null空值类型
null,就是没有值,但它也可以是一个字符串
演示代码
<script>
let a=null;
console.log(a+"!!!");
console.log(a+1111);
</script>
演示结果
这里的null加字符串那么就成了字符串,但是加number,那么就直接赋值
运算符
JS的运算符和JAVA是一样的,JS只有两个特色的运算符
==:会进行隐式类型转换
===:不会进行隐式类型的转换
演示代码
<script>
let a=100;
let b="100";
console.log(a===b);
console.log(a==b);
</script>
演示结果
和Java相同的语句
if语句,三元表达式,switch,while,continue,break,for