1. 编写外部js文件有时候会出现乱码,这时我们可以在<script>中加上charset="gb2312".
2. JavaScript中的布尔值: true(真),false(假)
3. js中的字符串表达式: string=“hello”+“world”; string值为hello world;
4. js数组: var a=new Array();
a[0]=" 10";
a[1]=" 20";
a[1]=" 30";
[index]="属性/值",每个index从0开始都对应一个值。
定义定长数组:var myarray= new Array(8);
5. 为数组赋值
① var a= new Array();
a[0]=" 10";
a[1]=" 20";
a[1]=" 30";
②var a= new Array(10,20,30,40,50....);
③var a = [66,80,90,77,59];
6. 获取或者更改数组长度
myarr.length;
7. 定义二维数组
1)使用for循环来定义二维数组
var myarr=new Array(); //先声明一维 数组
for(var i=0;i<2;i++) //一维数组长度为2
{
myarr[i]=new Array(); //再声明二维数组
for(var j=0;j<3;j++) //二维数组长度为3
{
myarr[i][j]=i+j; // 赋值,每个数组元素的值为i+j
}
}
2) 直接定义
var Myarr = [[0 , 1 , 2 ],[1 , 2 , 3]];
8. 输出数组
for(var i;i<you_array.length;i++)
{
document.write(your_array[i]+" ");
}
也可以把循环变量设置为这种形式: for(var i in your_array){ 输出; }
9. 根据数组中的内容对数组进行排序
your_array.sort(sortby());
注意sortby是自己编写的一个排序函数;默认将按字母顺序对数组中的元素进行排序,说得更精确点,是按照字符编码的顺序进行排序。
10. var i in Array 与 (i=0;i<Array.length;i++)的区别
前者可以遍历对象,而后者只是对数字的循环,只能遍历数组。
11. exercise
<!DOCTYPE HTML>
<html >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>流程控制语句</title>
<script type="text/javascript">
var pro=[['小A','女',21,'大一'],['小B','男',23,'大三'],['小C','男',24,'大四'],['小D','女',21,'大一'],['小E','女',22,'大四'],['小F','男',21,'大一'],['小G','女',22,'大二'],['小H','女',20,'大三'],['小I','女',20,'大一'],['小J','男',20,'大三']]
//直接定义二维数组
for(var i in pro)
{
document.write(pro[i]+"<br>"); //测试数组输出
}
document.write("<br>"+"<br/>"+"<br/>"); // /n
var grade_one=new Array(); //定义存放大一学生的数组
for(var i in pro)
{
if(pro[i][3]=="大一")
grade_one[i]=pro[i]; //向数组存入大一学生信息
}
for(var i in grade_one )
document.write(grade_one[i]+"<br>"); //大一学生信息数组测试输出
document.write("<br>"+"<br/>"+"<br/>"); // /n
var girl=new Array(); //定义大一女生数组
for(var i in grade_one)
{
if(grade_one[i][1]=="女")
girl[i]=grade_one[i]; //存放大一女生信息
}
for(var i in girl)
document.write(girl[i]+"<br>"); //输出
document.write("<br>"+"<br/>"+"<br/>"); // /n
</script>
</head>
<body>
</body>
</html>
12. JavaScript中的函数
格式:
function myfunc()
{
functuon_body;
return value; //返回值
alter("return_values"); //弹窗
}
调用JS函数: 刚开始可以使用鼠标按钮事件来触发函数。
13. JavaScript 事件
JavaScript 创建动态页面。事件是可以被 JavaScript 侦测到的行为。 网页中的每个元素都可以产生某些可以触发 JavaScript 函数或程序的事件。
事件表:
1)onClick事件(οnclick="func()")
这就很简单了,不再赘述了。
2)onmouseout事件(οnmοuseοver="func()")
当鼠标经过一个对象时,就会触发相应的函数/事件。
例如:
3)onmouseout 事件
一开始进入网页时不会触发,但当鼠标移到对象再离开的时候就会触发相应的事件
4)光标聚焦事件(onfocus)
当网页中的对象获得聚点时,执行onfocus调用的程序就会被执行。
5)失焦事件(onblur)
onblur事件与onfocus是相对事件,当光标离开当前获得聚焦对象的时候,触发onblur事件,同时执行被调用的程序。
6) 内容选中事件(onselect)
选中事件,当文本框或者文本域中的文字被选中时,触发onselect事件,同时调用的程序就会被执行。
7)文本框内容改变事件(onchange)
通过改变文本框的内容来触发onchange事件,同时执行被调用的程序。
修改text之后,要在其他地方点一下才会出现警告框!!!
8) 加载事件(onload) 加载新页面
事件会在页面加载完成后,立即发生,同时执行被调用的程序。
注意:1. 加载页面时,触发onload事件,事件写在<body>标签内。
2. 此节的加载页面,可理解为打开一个新页面时。
9) 卸载事件(onunload) 格式: window.οnunlοad=onunload_func;
当用户退出页面时(页面关闭、页面刷新等),触发onUnload事件,同时执行被调用的程序。
另: 离开当前网页有两种方式,
1.像平常我们关闭网页,也就是离开网页了;
2.在当前网页点击加载其他网页,跳转到其他网页,也是离开当前网页的一种;
onunload属于第2种,只有当你要跳转到另一个页面时,也就是要离开当前网页了,要跳转到另一个网页了,onunload才会被触发;
那平常时关闭网页就直接跳出一个对话框是怎么办到的?原来还有一个onbeforeunload,顾名思义,就是在onunload被执行之前,就被调用,无论是以上2种跳转方法中的哪种,onbeforeunload都会被触发。
注意:这个事件好像只对IE有效,而且是当刷新页面或者点击超链接时才会触发,而关闭页面是不会被触发的;如果想要关闭网页时触发弹窗,我们可以使用onbeforeunload事件;window.οnbefοreunlοad=onbeforeunload_func;
14. Programing Exercise
<!DOCTYPE html>
<html>
<head>
<title> 事件</title>
<script type="text/javascript">
function count(){
var sum=0;
var num1=document.getElementById("txt1").value; //获取第一个输入框的值
var num2=document.getElementById("txt2").value; //获取第二个输入框的值
var sig=document.getElementById("select").value; //获取选择框的值
switch(sig)
{
case "+" : sum=parseInt(num1)+parseInt(num2);
break;
case "-" : sum=num1-num2;
break;
case "*" : sum=num1*num2;
break;
case "/" : sum=num1/num2;
break;
} //获取通过下拉框来选择的值来改变加减乘除的运算法则
document.getElementById("fruit").value=sum; //设置结果输入框的值
}
</script>
</head>
<body>
<input type="text" id="txt1" >
<select id="select">
<option value="+">+</option>
<option value="-">-</option>
<option value="*">*</option>
<option value="/">/</option>
</select>
<input type="text" id="txt2" >
<input type="button" value=" = " onClick="count()"> <!--通过 = 按钮来调用创建的函数,得到结果-->
<input type="text" id="fruit" >
</body>
</html>