js的三种引入方式
<button onclick="alert('发送验证码成功,50s重试')">点我发送验证码</button>
<script>
alert('你好')
</script>
<script src="./my.js"></script>
输入和输出语法
1. document.write()在HTML文档中输出,直接页面上面就可以直接看到结果
2. alert()警示框 在页面上方弹出警告框
3. console.log() 在控制台输出,通过f12查看控制台
4. prompt() 弹出式输入框,在网页上方退出输入框,可以直接输入数据(接收到的数据是字符串类型)
变量
变量:变量的本质是在内存中临时创建一个容器,拿来存储数据
名面规则:
1、由字母、数字、下划线、$符号组成,不能以数字开头
2、变量名不能是保留字,如:var for while等
3、严格区分大小写,如:username和userName,这是两个不同的变量
4、变量名必须要有意义,不能是随意乱起的a,b,c变量名
5、一般使用驼峰名面法,如:userName
let替代var的原因:
// let 的存在就是为了解决var的一些问题
// 1. var 可以先使用 再声明
// 2. var 可以重复声明 弊端:你设置了一个变量名为a,但是你同事并不知道你给a设置过变量名,也重新声明了一次,结果你的数据就被你同事的覆盖了)
一、创建变量
1. 声明变量语法:let 自定义的变量名
let age
// 赋值符号 =
age = 18
// 重新赋值
age = 19
console.log(age); //19
2. 变量的 初始化 声明变量的时候直接赋值
let age = 18
console.log(age); //18
3. 声明多个变量 用逗号分隔
let a = 1, b = 2, c = 3
console.log(a); //1
console.log(b); //2
console.log(c); //3
4.交换变量
// 临时变量 中转站
let temp
temp = num1
num1 = num2
num2 = temp
数组
1.声明一个变量,里面存储数组类型
let arr = [1,2,3,a,b,c]
console.log{arr.length}
console.log{arr[0]}
console.log{arr[4]}
数据类型
一、数据类型的概念和应用
1、因为每个类型数据的存储都不一样,占用的比特位不一样,而如果统一一个数据类型存储(内存会预留出来),这样会浪费很多的资源
2、也为了方便程序员使用数据
二、基本数据类型
1、number型:(数字型)
Infinity 无限大
1e5:100000
1e+5
科学计数法
NaN Not a Number
2、string类型: (字符串型)
单引号' '、双引号" "、反引号` `
字符串拼接
'+ 变量名 +' 去替换需要替换的内容
有拼接不方便引申出模板字符串
模板字符串(ES6) (一定要使用反引号包裹才能使用模板字符)
`字符串${变量}字符串 `
3、boolean 布尔型
true
false
4、未定义类型:undefined (只声明变量,没有赋值给变量)
5、null 空引用 (本质是一个对象、变量内容为空)
检测数据类型:typeof+数据
console.log(typeof 1234);
console.log(typeof '1234');
console.log(typeof true);
console.log(typeof null);
console.log(typeof 'false');
console.log(typeof undefined);
三、引用数据类型
- object 对象
- function 函数
- array 数组
四、数据类型的转化
1、为什么转化数据类型:
因为从用户那里获取到的数据类型是字符串型,而字符串型的数字相加只会相连接('12'+3 = 123),所以为了数据能够相加减,我们需要把字符串转化为数据类型
2、显示转化
转化为数字型:Number()
console.log(Number('1234acs'));
console.log(Number('1234'));
console.log(parseInt('12345.123'));
console.log(parseInt('12345.123abc'));
console.log(parseInt('abc12345.123'));
console.log(parseFloat('110.11'));
console.log(parseFloat('110.11abc'));
console.log(parseFloat('abc110.11'));
转化为字符串型:String() 或 变量.toString(进制)
3、隐式转化
+号作为正号解析可以转换成Number
如:
let num1 = +prompt('请输入第一个数字')
let num2 = +prompt('请输入第二个数字')
document.write(`您输入的第一个数字为${num1},您输入的第二个数字为${num2},他们的和为${num1 + num2}`)
任何数据和字符串相加结果都是字符串
字符串和数字(- * /)可以隐式转化为Number型
特别注意:js代码的执行顺序是从上到下,从左到右(不同优先级别除外)