1.语句
通常一行代码 如果添加了分号->一条语句
使用;分隔
2.变量
目的
通过一个名字 来表示一个可以改变的值
定义方式
ver 变量名=值;
var关键字
不赋值
var 变量名
关键字
什么是关键字
语言本身提供的名字
有固定意义
var
如var 就是定义变量的意思
语言本身 提供了很多关键字
var
for
if
变量名
开发者起的一个名字
注意
1.不能使用关键字 定义变量名
2.不能以数字开头
3.不能以特殊符号开头
4.定义变量名要有意义
驼峰命名法
第一个首字母小写其他首字母大写
下划线命名法
意义
变量名
开发者起的一个名字
外号
标记
值
具体内容
数字
文字(字符串)
数组
对象
由名字 表示 后面的值
子主题 1
3.注释
单行注释
Ctrl+/
多行注释
Ctrl+shift+/
没实际意义,不会去执行
只让开发者看到
不让浏览器看到,屏蔽了浏览器
4.调试
按F12(右键检查元素)->console
数据类型
Number 数字类型
包含浮点和整数
String
字符串类型“”或者"包裹的都是字符串
boolean
波尔类型
true
对
false
错
Array 数组
Object 对象
Function 函数
数据类型的转换
字符串 转数字
转整数
parselnt()
转浮点
parseFloat()
如何使用小数?
精度丢失
不要直接使用小数
非要使用
1.乘以100(精准的级别)倍
2.运算完毕 再还原倍数
运算符
算术运算符
+
-
*
/
%
复合运算符
+=
var a =10;
var b = 20;
a =a+ b
a += b
-=
var a =10;
var b = 20;
a- =a+ b
*=
/=
%=
++
自己给自己增加一个一
--
自己给自己减少一个一
自增自减运算符
比较运算符
结果
就是一个Boolean类型的值
true
false
>
<
>=
<=
==
忽略数据类型
1与“1”认为是相同的
===
严格查看数据类型
1与“1”认为是不相同的
必须类型与值都相同
!=(不等于)
1 “1”
假的
!==
1 “1”
真的
逻辑运算符
与&& (两个and符)
所有条件 都必须满足 才算真的
或||
只要有一个条件满足 就是真的
非!
黑白颠倒
对的就是错的 错的就是对的
/*
* 表示真的值
* true
* 1
* 有内容的字符串“xx”(不是空字符串)
*(存在值的)有值的对象
*
* */
/*表示假的值
* false
* 0
* null
* undefineded
* NaN
* 空字符串“ ”
* */
三元运算(三目运算)
经常代替if else语句
if(睡觉){
做梦
}else{
掌握三元运算
}
三元运算
睡觉?做梦:掌握三元运算
条件?满足执行:不满足执行
必须 数字与 数字之间 运算
输入内容
prompt() 弹窗
输出
console.log(a);//日志
console.warn(a);//警告
console.info(a);//详细信息
调试方式
1.console.log(a);//日志
2.断电调试(至少是半个大神级别才会)
在程序中 打点 阻止继续执行
调试流程
1.先通过经验 定位到 大概错误位置
2.打开浏览器中的sources
3.点击要调试的文件(js)
4.在怀疑有错误的地方 点个点(打断点 在数字位置)
5.程序重新运行会在断点位置停止
->鼠标移动到断点上面的变量
->就会显示变量的值
6.如果继续排错 可以打多个断点
通过播放键 跳到下一个断点
通过下一步 执行下一步代码
分支结构
if语句
if(条件){
}
if(条件){
}else{
}
if(){
}else if(){
}else{
}
switch
选择其中的某一个点子(case)
switch(变量){
case值1:
break;
case值2:
break;
default:
}
break不是强制添加的 如果不添加break 程序会继续走下面的条件
循环结构
知道循环次数
for
for(var i=0;i<5;i++){
循环体;
}
for()中的各个语句的含义
var i=0; 初始化变量
i<5; 循环的条件
i++;更改变量的值
不知道循环次数
while
while
while(条件){循环体}
do while
do while
不管条件 满不满足 先执行一次循环
循环相关的关键字
continue
从continue的位置开始 跳过本次循环
continue前面不会跳过
for (var i=1;i<=100;i++) {
console.log("晕晕晕");
if (i===33||i===55||i===72) {
continue;
// 从continue的位置开始 跳过本次循环
}
console.log(i);
}
break
跳出循环
函数
具备某些功能的工具
四种类型
无返回值
带参数
不带参数
var 函数名 = function函数名(){}
function函数名(){}
函数名()
整体
有返回值
带参数
不带参数
返回值
带返回值的函数是什么?
返回值 是什么 函数就是什么
1
function x(){return 1}
return 值;(return 后面加个值)
return
放到函数中
return 值;
有返回值的函数
return ;
跳出函数
组成
声明函数
function函数名(){}
调用函数
函数名()
内置函数
console.log();
console.log() 方法用于在控制台输出信息。
该方法对于开发过程进行测试很有帮助。
alert()
alert() 方法用于显示带有一条指定消息和一个 确认 按钮的警告框。
Math.random();
随机数
prompt()
prompt()方法用于显示可提示用户进行输入的对话框。
封装
编程思想
参数
形式参数
形参
没有实际意义
代表着 即将传进来的实参
实际参数
实参
是 实实在在的一个值
返回值
带返回值的函数是什么?
返回值 是什么 函数就是什么
1
function x(){return 1}
return 值;(return 后面加个值)
return
放到函数中
return 值;
有返回值的函数
return ;
跳出函数
作用域
概念
变量起作用的范围
局部变量
作用域 只在定义的函数体 里面,在函数体外面是不可以使用的
全局变量
子主题 1
自执行函数
作用域的问题(防止多个js文件间 变量互相影响)
作业
面试题
作业
回顾
1.
变量的定义
值可以被更改的量 叫做变量
公式:var 变量名 = 值;
var a = 30;
a = 10;
a = 25;
2.
数据类型
数字Number
数字
字符串转数字
parseInt()
整数
parseFloat()
浮点
如
var s = "3.1415926";
document.write(parseInt(s));
document.write("<hr>");
var s = "3.1415926";
document.write(parseFloat(s));
document.write("<hr>");
字符串String
“”
‘’
数字转字符串 +
拼接字符串
+
波尔Boolean
true
非0数字
123
-123
非空字符串
“有内容”
“ ”
有值的对象
var a = {s:12}
var b = [12,3]
var c = function(){}
false
0
NaN
undefined
null
""
函数Function
匿名函数
var a = function(形参列表){函数体}
function 函数名(形参列表){函数体}
数组Array
对象Object
3.
运算符
a.算术运算符
+
var a = 1+1;
-
var a = 1-1;
*
var a = 1*1;
/
var a = 1/1;
%
var a = 1%1;
b.复合运算符
+=
var a = 10;
a = a+5;
var a = 10;
a += 5;
-=
var a = 10;
a -= 5;
*=
var a = 10;
a *= 5;
/=
var a = 10;
a /= 5;
%=
var a = 10;
a %= 5;
++
--
加加减减在前 先做自增减 再做其他运算
var a = 30;
var b = a++ + 40;//a 是30
console.log(a)//31
c.逻辑运算符
逻辑与&&
两边条件都满足 -> true
只要有一个条件不满足 就不成立 -> false
逻辑或||
两边条件 只要有一个满足 -> true
两边条件 都不满足 -> false
逻辑非!
对的加上感叹号 -> false
错的加上感叹号 -> true
d.比较运算符
>
>=
<
<=
==
忽略数据类型
1 == “1” --->true
===
绝对等于 区分数据类型
1 === “1” --->false
!=
!==
对比之后的结果 -> boolean类型的值(true false)
4.
分支结构
if
if(条件){条件满足执行}
if(条件){条件满足执行}else{条件不满足执行}
if(条件){条件满足执行}else if(条件){条件满足执行}else{条件不满足执行}
switch case
switch(变量){
case 值1:
满足这个case执行代码
break;
case 值2:
满足这个case执行代码
break;
default:
所有case都不满足 执行
}
5.
循环结构
for
知道循环次数的时候用
for(var i=0;i<99;i++){循环体}
var i=0; 初始化变量
i<99; 循环的条件
i++;更改变量的值
while
不知道循环次数的时候用
while
while(条件){循环体}
//1 表示true 肯定满足
while(1){
var num = parseInt(Math.random()*11);
if(num===10) {break;}
}
do while
不管循环条件是不是满足,都会先执行一次
do {循环体}while(条件)
关键字
continue跳过本次循环
breakt跳出循环知道循环次数 for
for(var i =0 ;i<5;i++){ }
for()中的各个词语的含义:var i=0初始化 变量 i<5;循环条件 i++更改变量的值
不知道循环次数 while
//100以内所有偶数的和
// var sum=0;
// for(var i=0;i<101;i++) {
// if (i % 2 === 0) {
// sum=sum+i;
// }
// }
// console.log(sum);
continue 从continue的位置开始 跳过本次循环 continue前面不会跳过
//跳出循环
for(var i=1;i<101;i++){
console.log("YYYYY")
if(i===33){
continue;
}
if(i===55){
continue;
}
console.log(i);
}
//while循环
var blood =1000;
while (blood>0){
var skill=prompt("请输入技能:1");
blood-=500;
console.log(blood);
}
while while(条件){循环体}
do while
do{}while()
返回值是什么 函数就是什么 function x(){return 1}
return 值
放到函数中
return 值 有返回值的函数
return 跳出函数
5.三元运算
睡觉? 做梦:掌握三元运算
条件(xx==c=xxx)?满足执行:不满足执行
6.
函数
创建函数
function函数名(形参列表){函数体}
调用函数
函数名(实参列表)