目录
视频23
break、continue语句的用法
break可以结束switch语句,同样,还可以结束其所在的循环
例子:
for(var i=1;i<=5;i++)
{
if(i==3)
break;
document.write(i);//1 2
}
例子:
for(var i=1;i<=5;i++)
{
for(var j=1;j<=5;j++)
{
if(j%2==0)
break;//结束的是内部循环
}
document.write(i);//1 2 3 4 5
}
注意:break结束的是他所在的循环,不会影响其他的循环
例子:想结束的是外部循环而不是内部循环
flag:
for(var i=1;i<=5;i++)
{
for(var j=1;j<=5;j++)
{
if(j%2==0)
break flag;//结束的是外部循环
}
document.write(i);//没有任何输出结果
}
continue的作用:结束的是本次循环,直接进入下一次循环
一旦执行,则当前的这次循环直接结束,进入下一次的循环
for(var i=1;i<=5;i++)
{
if(i==3)
continue;//结束本次循环,直接进入下一次的循环,也就是去执行i++
}
document.write(i);//1245
}
例子:(嵌套循环)
for(var i=1;i<=5;i++)
{
for(var j=1;j<=5;j++)
{
if(j%2==0)
continue;//结束的是所在循环的某一次循环,直接去执行j++
}
document.write(i);//1 2 3 4 5
}
例子:
flag:
for(var i=1;i<=5;i++)
{
for(var j=1;j<=5;j++)
{
if(j%2==0)
continue flag;//结束的是外部循环的某一次循环,然后直接去执行i++
}
document.write(i);//没有任何输出结果
}
视频24
函数
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<script type="text/javascript">
function show()
{
alert("你好");
alert("我好");
alert("大家好");
}
show();
for(var i=1;i<=10;i++)
document.write("*");
show();
</script>
<!-- 函数就是用来解决相同的功能的不用重复写多次的问题 -->
</div>
</body>
</html>
视频25
函数
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<script type="text/javascript">
function fun()
{
var sum=44+66;
alert("sum="+sum);
}
fun();
</script>
</div>
</body>
</html>
有参数的函数,实现求两个数的和
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<script type="text/javascript">
function fun(num1,num2)
{
var sum=num1+num2;
alert("sum="+sum);
}
fun(66,88);
</script>
</div>
</body>
</html>
函数的参数帮助函数的功能更加灵活,让这个函数可以接收任意的数值
但是上一个函数调用并没有得到两个数字的和。如果要得到和的值就要进行return操作,调用的时候就可以进行变量接收。调用者就可以对这个数值进行自己的处理。不要在return后边写任何语句,因为不会并不会被执行。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<script type="text/javascript">
function fun(num1,num2)
{
var sum=num1+num2;
alert("sum="+sum);
return sum;
}
var s= fun(66,88);
if(s>10)
alert("哈哈哈没想到吧")
</script>
</div>
</body>
</html>
function 函数名(参数...)
{
return 返回值;
}
自定义函数的考虑方式:
1.是否需要返回值
2.是否需要参数
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<script type="text/javascript">
//求出两个数中的最大值
function getMax(num1,num2)
{
return num1>num2?num1:num2;
}
//判断两个数是不是相等
function isEqual(n1,n2)
{
return n1==n2;
}
//打印一个五行五列的矩形(不需要参数也不需要返回值)
function rectangle()
{
for(var i=1;i<=5;i++)
{
for(var j=1;j<=5;j++){
document.write("* ");
}document.write("<br/>");
}
}
rectangle();
</script>
</div>
</body>
</html>
视频26
递归
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<script type="text/javascript">
function test(a)
{
if(a<0)
return;//结束函数的执行,直接返回到调用函数的位置
else
alert(a);
}
test(-1);//不会有任何的运行结果
test(6);//会弹出6
//函数之间是可以相互调用的
function add(a,b)
{
return a+b;
}
function show()
{
var sum=add(1,3);
alert(sum);
}
show();
alert("开始演示递归部分");
//函数的递归 就是函数自己调用自己
//求从1开始一直到某个数的和
function add(n)//这是一种非递归的算法
{
var sum =0;
for(var i= 1;i<=n;i++)
sum=sum+i;
return sum;
}
alert(add(5));
function digui(n)
{
if(n==1)
return 1;
else
return n+digui(n-1);
}
alert(digui(4));
</script>
</div>
</body>
</html>
递归的特点:
自己调用自己,递归要注意内存问题,而且递归必须有条件的结束。
视频27
对象创建
js的数据类型
基本类型:四种 数据 字符串 布尔 未定义类型 特点:只能存储数据
引用类型:object是最基本的类型 特点:是数据和功能(函数)的组合
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<script type="text/javascript">
var a=45;
function show()
{
alert("show");
}
var obj=new Object();
obj.name="zhangsan";
obj.fun=show;
//使用对象
alert(obj.name);
obj.fun();
//对象既可以存储数据,又可以包含函数
</script>
</div>
</body>
</html>
还可以直接写到后边,写成匿名函数的形式
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<script type="text/javascript">
var a=45;
var obj=new Object();
obj.name="zhangsan";
obj.fun=function()
{
alert("show");
}
;
//使用对象
alert(obj.name);
obj.fun();
//对象既可以存储数据,又可以包含函数
</script>
</div>
</body>
</html>
创建对象的时候可以省略new
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<script type="text/javascript">
//创建对象的时候可以省略new
var obj= Object();
obj.age=23;
obj.fun=function(){
alert("哈哈哈");
}
alert(obj.age);
obj.fun();
</script>
</div>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<script type="text/javascript">
//创建对象的时候可以使用字面量方式
function show()
{
alert("哈哈哈");
}
var obj= {
name:"李四",
age:23,
fun:show
}
alert(obj.name)
obj.fun();
</script>
</div>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<script type="text/javascript">
//创建对象的时候可以使用字面量方式
var obj= {
name:"李四",
age:23,
fun:function(){
alert("haha");
}
}
alert(obj.name)
obj.fun();
</script>
</div>
</body>
</html>
加上单引号也可以
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<script type="text/javascript">
//创建对象的时候可以使用字面量方式
var obj= {
'name':"李四",
'age':23,
'fun':function(){
alert("haha");
}
}
alert(obj.name)
obj.fun();
</script>
</div>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<script type="text/javascript">
//创建对象的时候可以使用字面量方式 可以创建一个空的对象
var obj= {};
obj.name="赵四";
obj.ff=function(){
alert("哈哈哈");
}
alert(obj['name']);
obj.ff();
</script>
</div>
</body>
</html>