一 输入方式
prompt(`请输入用户名`)
confirm (`请选择`)
二 输出方式
1. alert (给用户看)
2.console.log (控制台)
3.document.write (body显示)
三 基本数据类型
1. 字符串
console log( ``)
分单引,双引,反引(常用)
2 . 数值
console log (123)
不加引号,直接给数字
3. 布尔类型
boolean
ture(成立) . fasle(不成立)
4. 空类型
null
5. 未定义
undefined
console.log(undefind)
6. 获取数据类型名
console.log(typeof(10))
console.log(typeof(`hello`))
console.log(typeof(true))
console.log(typeof(null))
7. 对于prompt()
浏览者只要点击 确认 接受到的就是 string类型
浏览者只要点击 取消 接受到的就是 null类型
console.log(confirm(`请选择`))
四 数据初体验
1.数组
一组数据的有序集合
0 1 2 3
consol.log [10,20,30,40]
也可以是
consol.log [`abc`,`syz`,`zhangsan`,150]
五 变量
1. 什么变量
变量是容器, 内存中用于存储数据的一个空间叫变量,这个空间为了使用所有一个名字
2. 定义
(声明) (赋值)
语法: let 变量名 = 数据
let 变量名 在内存中申请一个空间,并为之命名.
let x = 10
let y = `hello`
let v = true
let f = false
let m = [`zhangsan`, `lisi`, `wangwu `]
console.log(x)
console.log(y)
console.log(v)
console.log(m)
3. 变量的命名规则
(1) 强制约束
(2) 人为约束
多个单词用小驼峰: 每个单词首字母大写,除了第一个单词.
4. 变量的注意事项
let a //没有内容
console.log(a) //undefined (未定义)
注意: 没有赋值的内容,会显示undefined
小案例:
需求1: 弹出一个输入框,让用户输入名字
需求2: 弹出一个输入框,让用户输入名字
需求3: 在页面打印,用户输入名字和年龄
需求4: 弹出一个确认框,让用户选择确定还是取消
输入
let userName = prompt (`请输入姓名`)
let age =prompt (`请输入年龄`)
console.log(userName)
console.log(age)
弹出一个确认框
let ret = confirm (`请选择`)
console.log(ret)
* 5.交换两个变量里的值(重要)
let a = 10
let b = 20
console.log = (a,b)
显示 10 和 20
let c = a
a = b
b = c
console.log = (a,b)
显示 20 和 10
*
6. 数组的基本操作
0 1 2 3
let arr = [10,49,16,20]
查看所有的元素
console.log(arr)
(1) 查看其中一个数组
conlse.log(arr[0])
conlse.log(arr[3])
如果下表不存在则返回undefined
conlse.log(arr[10])
(2) 添加元素
语法:数组名[下标] = 数据
arr[4]=100
console.log(arr)
(3) 获取数组的长度
语法:数组名.length
consolo.log(arr,length)
小节:
数组元素的访问 数组名[下标]
添加元素 数组名[下标]=数据
数组长度 数组名.length
7. 常量 const
常量不允许修改,是一种特殊的变量.
语法:const 常量名 = 数据
const常量名 = 数据
const a = 10
console.log (a)
consple.log(a + 100)
a = 20 常量里面的值不允许修改,否则报错
const b 常量定义时必须赋值,否则报错
六 运算符
1.赋值运算符
2.算术运算符
+ - *
% 求余运算符
求两个数相除的余数
console.log(5 % 3)
主要用于判断一个数是不是另一个的整数倍
可以用于判断奇偶数,如果x % 结果是0 表示偶数
console.log(9 % 3)
3. ++自增
-- 自减
let a =20
a++
console.log(b)
b
console.log(b)
小结:
% 余两个数相除的余数
++ 自增1运算符
-- 自减1运算符
4.连接运算符
debugger
let str = `<table border="1" rules ="all" width = "500" height = "300" >`
str +=`<tr>`
str +=`<td></td>`
str +=`<td></td>`
str +=`<td></td>`
str +=`<td></td>`
str +=`<tr>`
str += `</table>`
document.write(str)
七 数据类型转换
1. 隐性转换
首先要明确,只要相同的数据才可以直接进行运算,如果数据类型不相同,会发生数据类型的转换.
2. 显性转换
Number (数据)可以讲其他数据类型转换为number类型
String(数据) 可以讲其他数据类型转换为string类型
console.log(Number(`20`))
console.log(10*Number(`20`))
console.log(String(10))
console.log(String(10) + '20')
3. 小案例
let inventory =100
let num = Number (prompt(`请输入本月的入库数`))
let num = prompt (`请输入本月的入库数`))
let num = +prompt (`请输入本月的入库数`))*1
let total = inventory + num
console.log(total)
小结:
如果数据类型不相同,会发生数据类型转换
隐式: 绝大多数隐式转换都是正确的.
显示: 在进行 + 与 += 时.如果有一个是字符串,要搞清楚是进行数学的加还是字符中的拼接
4. 数值取值
parseInt(字符串)
在一个字符串中,从左向右依次提取整数,知道遇到第1非数字停止提取.
console.log(parseInt(`10`))
console.log(parseInt(`10元`))
console.log(parseInt(`rmb10)) //NaN
parseFloat (字符串)
在一个字符串中,从左向右依次提取小数,直到遇到第1个非数字停止提取.
let num = 100
let price = parseFloat(prompt(`请输入价格))
let money = num * price
console.log(money)
小结: Number() 字符串内全都是数字 `20` `15.3`
parseInt() 与 parseFolat() 字符后面是非数字 `20元` `15.3元`
八 模板字符串
1.使用反引号定义的字符串也称之模板字符串.
模板字符中的特点:
可以换行定义字符串
可解析变量的值 $(变量名