js红宝书前3章
2019-07-21 本文已影响0人
凡_6944
学习了DOM,感觉和C语言真的挺像的。
1、变量
ECMAScript的变量是松散类型的,所谓松散类型就是可以用来保存任何类型的数据。换句话说,每个变量仅仅是一个用于保存值的占位符而已。定义变量时要使用var 操作符(注意var是一个关键字),后跟变量名(即一个标识符)
例如:var massage="hi";
但是var操作符定义的变量将成为定义该变量的作用域中的局部变量。也就是说如果在函数中使用var 定义一个变量,那么这个变量在函数退出后就会被销毁,例如:
function test(){
var message = "hi";//局部变量
}
test();
alert(message);//错误
这里,变量message是在函数中使用var定义的。当函数被调用时,就会被创建该变量并为其赋值。而在此之后,这个变量又会被立即销毁,因此例子中的下一行代码就会导致错误。不过,可以像下面这样省略var操作符,从而创建一个全局变量:
function test(){
message = "hi";//全局变量
}
test();
alert(message);//"hi"
这个例子省略了var操作符,因而message就成了全局变量。这样,只要调用过一次test()函数,这个变量就有了定义,就可以在函数外部的任何地方被访问到。
可以使用一条语句定义多个变量,只要像下面这样把每个变量(初始化或不初始化均可)用逗号分隔开即可;
建立一个对象会有两种方法:
第一种:
var obj={
name="猪八戒",
age="20",
adress="高老庄"
};
//每次在用的时候,调用的时候都是obj.name,obj.age等
第二种:
var obj=new Object();
obj.name="猪八戒";
obj.age="20";
obj.adress="高老庄";
还有一个就是方法的理解:
我们先定义一个对象:
var obj=new Object();
obj.name="孙悟空";
obj.age="30";
obj.adress="花果山";
obj.sayName=function (){
document.write("你好啊");
};
//在这里将一个函数赋值给对象的一个变量就叫做方法
注:
对象可以做的事情函数也可以做到
函数的定义:
function 函数名()//括号里面的是函数的参数,传递的是形参{
alert("哈哈");
}
举一个例子说明函数的定义以及函数的使用
function fun (a,b){
var c;
c=a+b;
return c;
}
fun(1,3);
//在这里就是将a=1,b=3传递到函数里面
//得到的结果就是c=1+3=4;
再看一下循环,感觉和c语言很像很像,只是再定义的时候用的是var
1、while循环
while()//判断循环能否进行的条件
{
//这里就是你要写的语句,即算法
};
2、do...... while
do
{
//这里就是你要写的语句,即算法
}while();
//while 和do......while的区别
//while就是判断循环的条件能否进行
//判断条件为真后,才可以进入循环体
//而do...... while就是不用判断,直接进入循环体,它就是如果在判
//断条为假的时候比while多进入循环体一次
3、for 循环
for(var i=0 ;i<10;i++)
{
//这里所需的循环语句
}
//for语句一般是我们用的最多的一种语句,因为在这里可以很清楚的看到循环所需的次数和循环的判断条件
//注:循环也是可以进行嵌套的,一般都是while嵌套while,for嵌套for,do.....while嵌套do.......while.
数组
var arr=[];
//定义一个数组就很像c语言里面的数组
//注:就是在js里面定义数组和c语言不一样,js里面的数组里面的数据比较复杂,它可以是number和char还有其他的,布尔值其他等的数据类型
//数组就是我们经常用的冒泡排序,还有选择排序,还有二维数组