笔记
1、js的三种引入方式:
(1)内行js:
<button οnclick="aler('点击我干什么??');aler('点击你咋了')">点击</button>
(2)内嵌js:(写在body结束标签的上面)
<body>
<script>
alert('66666')
</script>
</body>
(3)外联js:
<script src="./index.js"></script> (script标签存在src属性时,内部不能再写js代码)
2、对话框:
(1)警示框:
alert("")
(2)输入框:
prompt("")
(3)控制台打印:
console.log("")
(4)页面打印:
document.write("")
3、注释:
(1)单行注释:
//
(2)多行注释:
/**
*
*
*
*/
4、变量:(程序运行时存储数据的容器)
声明变量:
<1>var 变量名:(现在不用了)
<2>let 变量名:
(1)let 变量名
变量名=变量值
let pwd
pwd=prompt("")
alert(pwd)
(2)变量的初始化:
let 变量名=变量值
let pwd=prompt("")
alert(pwd)
注:变量的值可以更改
变量本生不存在数据类型,变量值的数据类型是什么,变量的数据类型就是什么
let关键字声明的变量不能重复声明
var关键字声明的变量能重复声明,只是简单的覆盖上一次的值
在javascript中,变量的名称命名规范:
只能由有效符号构成(大小写的字母、数字、下划线、$)
不能以数字开头
不能够使用关键字和保留字
变量名最好有意义
尽量遵循小驼峰命名法或下划线分割法(如let userName=""或let user_name="")
6、常量:
<script>
const PI=3.1415926
document.write(PI)
</script>
7、数据类型:
<1>内置的基本类型:
(1)数字类型 : int(整型) float(浮点型)(浮点数的计算不精确)
let a=123
let b=3.14
(2)字符串类型: string (被单引号或双引号括起来的字符序列)
let str1='dacongming'
let str2="dacongming"(模版字符串:能够识别html标签)
let str3=`<h1>我是模版字符串</h1>`
doucument.write(`str3`)
(3)布尔值:(boolean ) true、false
(4)undefined 变量定义但未被赋值,默认值为underfined
document.write(aa)
var aa=11
let aaa
(5)null
var bb=null
<2>引用数据类型:
(1)数值(Array)
(2)Object(对象) 万物皆对象
8、数据类型转换:
显示转换
<1>转换为数字类型:
(1)Number()
let pwd=prompt("请输入密码:")
document.write(Number(pwd))
(2)parseInt()\praseFloat() parseInt尽可能的将数据转换为整型 praseFloat把给的数据转化为浮点数
document.write(parseInt("3.1415926"))
document.write(praseFloat("3.1415926"))
(3)+
console.log(+undefined)
(4)tofixed()
let num=3.1415926
console.log(num.toFixed(2))
<2>转换为字符串:
(1)toString()
console.log(toString(1234))
(2)String()
console.log(String(1234))
(3)拼接
console.log(111+"222")
<3>转换为布尔值:
Boolean() (所有的非0都被转换为true)
console.log( Boolean(11))
9、算术运算符:
console.long(2+4)
console.long(2-4)
console.long(2*4)
console.long(4/2)
console.long(5%2) (取余)
console.long(4**3) (求幂次方)
10、比较运算符:
console.long(4>2) true
console.long(2<4) false
console.long(4>=2) false
console.long(2<=4) false
console.long(4==2) false
console.long(4!=2) true
console.long("2"==2) (存在隐式转换,把"2"转换为2,然后进行比较) true
conswole.long("2"===2) (===表示全等,判断值、数据类型都一致) false
11、赋值运算符:
let a=12
let a+=12(表示a=a+12)
let a-=2
let a*=2
let a/=2
12、自加自减运算符:
let a=12
let b=a++ (赋值运算符的优先级大于后加加,因此先进行赋值,再进行自增)
let b=++a (赋值运算符的优先级小于前加加,因此先自增,再进行赋值)
let c=a--
let d=--a
13、逻辑运算符:
(1)&& (两真则真,一假则假)
console.long(2<3&&3<2) false
(2)|| (一真则真,两假才假)
console.long(2<3||3<2) true
(3)!
console.long(!(2<3)) false
14、单分支:
if(条件){
条件成立时的代码
}
let age=+prompt("请输入您的年龄:")
if (age>=18){
console.log("恭喜你成年了,上网去吧!")
}
15、双分支:
if(条件){
条件成立时执行的代码
}else{
条件不成立时执行的代码
}
let age=+prompt("请输入您的年龄:")
if (age>=18){
console.log("恭喜你成年了,上网去吧!")
}else{
console.log("未成年,一边玩去")
}
16、多分支:
if(条件){
条件成立时执行的代码
}else if(条件){
条件成立时执行的代码
}else if(条件){
条件成立时执行的代码
}else{
条件不成立时执行的代码
}
17、三元运算符:
条件?条件成立时执行的代码:条件不成立时的代码
let age=+prompt("请输入年龄:")
age>=18?alert("成年了"):("完犊子了")
18、switch多分支语句:
<script>
let week=prompt("今天星期几:")
switch(week){
case "1":
alert("今天星期一,猴子穿大衣~~~")
break
case "2":
alert("今天星期二,猴子有点2~~~")
break
case "3":
alert("今天星期三,猴子去爬山~~~")
break
case "4":
alert("今天星期四,猴子要考试~~~")
break
case "5":
alert("今天星期五,猴子打老虎~~~")
break
case "6":
alert("今天星期六,猴子当老六~~~")
break
case "7":
alert("今天星期日,猴子看落日~~~")
break
default:
alert("你是猴子派来的救兵吧~~~")
break
}
</script>
作业
//1、
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
let num=+prompt("请输入一个整数:")
if(num>0){
console.log("大于0")
}else if(num<0){
console.log("小于0")
}else{
console.log("等于0")
}
</script>
</body>
</html>
//2、
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
let num=+prompt("请输入一个整数:")
if(num%2!=0){
console.log("是奇数")
}else{
console.log("是偶数")
}
</script>
</body>
</html>
//3、
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
let year=+prompt("请输入月份:")
switch(year){
case "1":
case "3":
case "5":
case "7":
case "8":
case "10":
case "12":
alert("31天")
break
case "4":
case "6":
case "9":
case "11":
alert("30天")
break
default:
alert("出错了")
break
}
</script>
</body>
</html>
//4、
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
let weight=+prompt("请输入体重:")
let height=+prompt("请输入身高:")
if(weight-10<=(height-108)*2<=weight+10){
console.log("合格")
}else{
console.log("不合格")
}
</script>
</body>
</html>
//5、
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
let a=+prompt("请输入存款的本金:")
let b=+prompt("请输入存款的年限:")
if(b==1){
document.write(a*0.0063*12*b)
}else if(b==2){
document.write(a*0.0066*12*b)
}else if(b==3){
document.write(a*0.0069*12*b)
} else if(b==5){
document.write(a*0.0075*12*b)
}else if(b==8){
document.write(a*0.0084*12*b)
}else{
document.write("false")
}
</script>
</body>
</html>
//6、
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
let x=+prompt("请输入x的值:")
if(x<1){
document.write(x)
}else if(1<=x<10){
document.write(2*x)
}else{
document.write(3*x-11)
}
</script>
</body>
</html>
//7、
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
let date1=+prompt("请输入一个数:")
let date2=+prompt("请输入一个数:")
let op=prompt("请输入一个运算符:")
switch(op){
case "+":
alert(date1+date2)
break
case "-":
alert(date1-date2)
break
case "*":
alert(date1*date2)
break
case "/":
alert(date1/date2)
break
default:
alert("出错了")
break
}
</script>
</body>
</html>