/* 这是多行注释 */
//这是单行注释
javascript 脚本语言 主要用来做特效 表单验证
组成:
(1)ECMAScript 核心
(2)Bom 浏览器对象模型
window 窗口
history 历史记录
location 地址栏
document 文档(点击提交 跟buttom一个样)
history 历史记录
location 地址栏
document 文档(点击提交 跟buttom一个样)
(3)Dom 文档对象模型
分类:
1.标签里面(内联) 不常用以事件属性 的形式,on...。例如:<button onClick=“alert(’这是弹窗‘)”></button>
2.html文档里面(内嵌) 不常用 以标签名的形式。例如:<script type=“text/javascript>
这里面写js代码 alert(’这是弹窗‘)
</script>
3.外部引用 用的多,随处可以用,但要注意顺序。例如: <script type="text/javascript" src="js文件的路径"></script>
三种弹窗:
alert(); 告警弹窗
confirm(); 选择框 有返回值 确定(true) 取消(false)
promt();输入框 输入的内容。
js的套路:
关键字 ,标示符,常量,变量
变量:用来存取数据 其数据是可以被改变的
定义: 一般用var 例如(var=aa)
定义并赋值 : var aa=123;
使用: aa;
赋值: 将右边的东西赋值给左边;例如(var aa =123
var bb = 0
bb=aa
bb=123)
数据类型: 数字 字符串 布尔 null undefined object
数据类型转化: 自动 强制
短整型 shot
整数 int
长整数 long
浮点数 float
双精度 double
运算符:
算数运算符:+ - * / ++自增(每次+1) --自减(每次减一) %取余
自增和自减 只和自己有关系的时候 在前在后没区别
参与表达式的时候
在前:等我自增 再来参与你们
在后:我们先开吧 然后我自己操作自己
例如: var n1 =1
var n2 =2
var aa = n1+n2==>3
var aa = ++n1+n2 ==>3
取余 var n = 133
个位:(n%10)
十位 :parsrInt(n/10%10)
百位:parsrInt(n/100)
赋值运算符:= += -= *= /=
var a = 3
a +=123 => a = a +123 ==>126
关系运算符 结果就是布尔类型 : > < >= <= != == ===
例如: = 赋值 == 比较值(等于) ===比较值和数据类型(严格等于)
逻辑运算符 结果就是布尔类型:
&& 并且 两边都是true 才是真的
|| 或者 只要一边是true 就是真的true
! 取反 !true==> false
三元运算符:
表达式 ? 真干这个 : 假干这个;
字符串拼接: + 自动把两边的数转成字符串运算
1+1=>2
"1" + "1" =>"11"
1+1+"1" => 2+"1"=>"21"
"1"+1+1=>"111"
字符串的拆分:
var aa ="你好";
"a" +"b" =>"ab"
"a"+aa"b"
switch 匹配 语法:
var aa = ”“
switch(aa){
case”3“:
break;
case”5“:
break;
default:
break;
}
运行原理:
变量aa的值匹配 case后面的值
匹配不到了就执行下面的代码
匹配不到就执行 default 下面的代码
执行完代码之后找break 找到就停
如果没有找到进入下一个代码 找(会执行case里面的代码)
直到最后
default
注意问题:Math.random()*3( 给电脑取随机数 *3 只能取到0 1 2 )
var dn =parseInt(Math.random()*3);
var zj =parseInt(prompt("0-剪刀,1-石头,2-布"));
输出的时候要 都给他加parseInt要是不给 zj 加的话 一个是数字 一个是字符串