学习工具:Edit plus 3
今日计划完成情况与改进措施
课程:jАVascript
讲师:张*振华(T平台)
内容:
1 jАVascript和jАVa没有任何关系
2 jАVascript不能读 写 保存 打开本地和web服务器上的文件
---------------------------------------------------------------------------------------------------
3 jАVascript的使用,有
① 引用外部文件中的js脚本
jАVascript可以单独保存为一个文件,命名为name.js,需要注意的是该js文件中不能包含<script></script>标签,
在HTML文件中引用的时候<script lauguage="jАVascript" type="text/jАVascript" src="name.js"></script>, 而推荐的写法是:<script type="text/jАVascript" src="name.js"></script>
eg.
//2.js , 一个脚本文件,只有一行代码
alert("我是一个js脚本");
//2.html
<html>
<head>
<title>标题</title>
</head>
<script src="2.js" type="text/jАVascript">
</script>
<body> </body>
</html>
---------------------------------------------------------------------------------------------------
② 在页面内引用
<script type="text/jАVascript">{ //<[CDATA[
//codes
}
//]]> </script>
eg.
<html>
<head>
<title>标题</title>
</head>
<body>
<script type="text/jАVascript" language="jАVascript" >//<![CDATA[
var arr = [];
arr[0] = "000";
alert(arr[0]);
arr.push("111");
arr.push("222");
arr.push('444');
arr.push("333"); //push函数中必须有参数才可以,否则arr长度不变
alert(arr.length);
arr.pop("222"); //pop函数中的参数不影响出栈的元素,不管是什么参数,出栈的都是栈顶元素,也就是最后一个push的元素
alert(arr.length);
for(var i = 0; i != arr.length; ++ i)
{
alert(arr[i]);
}
//]]>
</script>
</body>
</html>
---------------------------------------------------------------------------------------------------
③ 在HTML的一些控件属性中使用
eg.
<html>
<head>
<title>标题</title>
<script type="text/jАVascript" >//<![CDATA[
functiоn func(){
alert(this.value);
}
//]]>
</script>
</head>
<body>
//发现:双引号不能嵌套,就是说如果外层有双引号,内层必须为单引号,
//函数也必须加引号(单 双皆可)
<body onload = "alert('hah i am loading')" >
<input type="button" value="anniu" id="btn1" οnclick="func()">
</body>
</html>
---------------------------------------------------------------------------------------------------
4 jАVascript内置数据类型
Number :整数, 浮点数
Boolean :布尔值
String : 字符串,包括单个字符和多个字符
空值: NULL代表空值
未定义:undefined
functiоn : jАVascript中定义函数和定义类相同
Array : 数组
Error : 错误类型
OВJect : 上述所有对象的原型均为OВJect类型
表达式与运算符
赋值操作符:
=、+=、-=、*=、 /=、%=、<<=、>>=、>>>=、&=、^=、|=;
条件表达式:
status = (age >= 18) ? "adu1t" : "minor";
算数操作符:
+、- 、* 、/ 、% 、++和--,y = ++x;
位逻辑运算符:
&、|、^; <<、 >>、 >>>
布尔操作符:
&&、|曱|、!
比较操作符:
==、>、>=、<、<=、!=,====;
连接操作符 + 用于连接两个字符串:
x= "Hello "; y= "World!"; x + y 为 "Hello World!"
其他操作符
in, typeof, instanceof等
typeof(变量名)获得该变量的类型
instanceof: Boolean result = oВJ instanceof ClassName; 该对象oВJ是否为类ClassName的一个实例
in: propertyName in oВJect; //右边的对象oВJect是否有左边这样一个属性, in还可以用于for循环遍历
//自定义属性
eg.
<html>
<head>
<title>标题</title>
<script >//!<[CDATA[
var i = 123;
var str = "i am ";
str = str + i;
alert(str); //str结果为i am 123
var num; //未定义类型
var count = 0;
alert(num + count); //结果为NaN, 因为num为未定义类型
alert(num instanceof Number); // 显示flase
alert(typeof(num)); //结果为 未定义类型
alert(typeof(count)); //结果显示为number,需要注意的是:当在别的地方
//用Number类型的时候最好大写字母N
//]]>
</script>
</body>
</html>
---------------------------------------------------------------------------------------------------
5 作用域
作用域只有两种:全局 和 局部
<html>
<head>
<title>标题</title>
<script type="text/jАVascript" language="jАVascript">//!<[CDATA[
var a = 10;
var m = 100;
functiоn test()
{
alert('a=' + a);
var b = 20;
var a = 30;
var m = 200;
alert('a=' + a);
alert('m=' + m);
}
test(); //显示:a=undefined 和 a=30 和 m = 200
//因为在test函数中定义的a屏*蔽掉全局的a,但是却没有取到a=30的值
//当把test函数中对a的定义去掉后则显示a=10
//如果把test函数中的var a=30提前到alert函数之前则就会显示a=30
//局部的m屏*蔽掉全局的m
//]]>
</script>
</head>
<body>
<script language="jАVascript">
</script>
</body>
</html>
---------------------------------------------------------------------------------------------------
6