JavaScript 是世界上最流行的编程语言—js user
注:JavaScript 与 Java 是两种完全不同的语言!
JavaScript 使用
HTML 中的脚本必须位于<script> 与 </script> 标签之间。
脚本可被放置在 HTML 页面的 <body> 和 <head> 部分中。
引用外部js文件:<script src=”myScript.js”></script>
在 <head> 或 <body> 中引用脚本文件都是可以的。实际运行效果与您在 <script> 标签中编写脚本完全一致。
JavaScript 输出
如需从 JavaScript 访问某个 HTML 元素,您可以使用 document.getElementById(id) 方法。请使用 “id” 属性来标识 HTML 元素:
eg:id=demo的元素改变html代码为My First JavaScript
document.getElementById("demo").innerHTML="My First JavaScript";
eg:下面的例子直接把 <p> 元素写到 HTML 文档输出中:
document.write("<p>My First JavaScript</p>");
注意;使用 document.write() 仅仅向文档输出写内容。如果在文档已完成加载后执行 document.write,整个 HTML 页面将被覆盖
JavaScript 语句
1.分号用于分隔 JavaScript 语句。通常我们在每条可执行的语句结尾添加分号。
2.浏览器会按照编写顺序来执行每条语句.
3.JavaScript 对大小写敏感.
4.JavaScript 会忽略多余的空格。您可以向脚本添加空格,来提高其可读性.
5.文本字符串中使用反斜杠对代码行进行换行。(只是代码换行,文档并没有)
6.JavaScript 是脚本语言。浏览器会在读取代码时,逐行地执行脚本代码。而对于传统编程来说,会在执行前对所有代码进行编译。
JavaScript 注释
JavaScript 不会执行注释。js注释有两种:
[1]单行注释以 // 开头。
[2]多行注释以 /* 开始,以 */ 结尾。
JavaScript 变量
[1]变量必须以字母开头
[2]变量也能以 $ 和 _ 符号开头(不过我们不推荐这么做)
[3]变量名称对大小写敏感(y 和 Y 是不同的变量)
我们使用 var 关键词来声明变量:
eg:
var a=1.0; //输出时并不会显示那个0
var b=1.2
var c=3;
var d='a';
var e="hello world";
[1]我们并不需要指定数据的类型,如整数、浮点数、字符串等。但在定义之后,要注意不同数据类型之间数据的操作。
[2]可以在一条语句中声明很多变量。该语句以 var 开头,并使用逗号分隔变量即可。
[3]重新声明 JavaScript 变量,该变量的值不会丢失。
[4]您可以通过 JavaScript 变量来做算数,使用的是 = 和 + 这类运算符。
JavaScript 数据类型
字符串、数字、布尔、数组、对象、Null、Undefined
JavaScript 拥有动态类型。这意味着相同的变量可用作不同的类型
var x // x 为 undefined
var x = 6; // x 为数字
var x = "Bill"; // x 为字符串
[1]JavaScript 字符串:字符串可以是引号中的任意文本。您可以使用单引号或双引号:
var carname1="Bill Gates";
var carname2='Bill Gates';
var answer1="Nice to meet you!";
var answer2="He is called 'Bill'";
var answer3='He is called "Bill"';
var answer4="'hello' \"world\""; 使用转义 \' \"
[2]JavaScript 数字:JavaScript 只有一种数字类型。数字可以带小数点,也可以不带。极大或极小的数字可以通过科学(指数)计数法来书写
var x1=34.12; //使用小数点来写
var x2=34; //不使用小数点来写
var y=123e5; // 12300000
var z=123e-5; // 0.00123
[3]JavaScript 布尔:布尔(逻辑)只能有两个值:true 或 false
var x=true
var y=false
[4]JavaScript 数组:连续的存储空间,用来保存一组相同的数据类型.
var cars=new Array();
cars[0]="Audi";
cars[1]="BMW";
cars[2]="Volvo";
或者:
var cars=new Array("Audi","BMW","Volvo");
数组下标是基于零.
其实一个数组里的不同位置的数据的类型可以不同的,
[5]JavaScript 对象:对象由花括号分隔。在括号内部,对象的属性以名称和值对的形式 (name : value) 来定义。属性由逗号分隔:
var person={
firstname : "Bill",
lastname : "Gates",
id : 5566
};
对象属性有两种寻址方式:
name=person.lastname;
name=person["lastname"];
[6]Undefined 和 Null:Undefined 这个值表示变量不含有值。通过将变量的值设置为 null 来清空变量。
当您声明新变量时,可以使用关键词 “new” 来声明其类型:
var carname=new String;
var x= new Number;
var y= new Boolean;
var cars= new Array;
var person= new Object;
//关于数据类型的问题可以更深入的学习JavaScript高级语法:ECMAScript 原始类型、ECMAScript 类型转换、ECMAScript 引用类型等。
JavaScript 对象
JavaScript 中的所有事物都是对象:字符串、数字、数组、日期,等等。在 JavaScript 中,对象是拥有属性和方法的数据。属性是与对象相关的值。方法是能够在对象上执行的动作。
创建对象可以用new 使用方法使用符号“.”。
JavaScript 函数
函数就是包裹在花括号中的代码块,前面使用了关键词 function:
function functionname(){
这里是要执行的代码
}
1.JavaScript 对大小写敏感。关键词 function 必须是小写的,并且必须以与函数名称相同的大小写来调用函数。
2.在调用函数时,您可以向其传递值,这些值被称为参数。这些参数可以在函数中使用。您可以发送任意多的参数,由逗号 (,) 分隔:变量和参数必须以一致的顺序出现。第一个变量就是第一个被传递的参数的给定的值,以此类推。
3.有时,我们会希望函数将值返回调用它的地方。通过使用 return 语句就可以实现。在使用 return 语句时,函数会停止执行,并返回指定的值
4.在 JavaScript 函数内部声明的变量(使用 var)是局部变量,所以只能在函数内部访问它。您可以在不同的函数中使用名称相同的局部变量,因为只有声明过该变量的函数才能识别出该变量。只要函数运行完毕,本地变量就会被删除。
5.在函数外声明的变量是全局变量,网页上的所有脚本和函数都能访问它。
6.JavaScript 变量的生命期从它们被声明的时间开始。局部变量会在函数运行以后被删除。全局变量会在页面关闭后被删除。
7.如果您把值赋给尚未声明的变量,该变量将被自动作为全局变量声明。
JavaScript 运算符
注意:对字符串和数字进行加法运算时,会直接被当成两个字符串相加。
JavaScript 比较和逻辑运算符
条件运算符:
variablename=(condition)?value1:value2
eg:x=x<5?3:7;
如果x<5,x=3,否则x=7
JavaScript If…Else 语句
If 语句:只有当指定条件为 true 时,该语句才会执行代码。
if (条件) {
当条件为 true 时执行的代码
}else{
当条件不为 true 时执行的代码
}
JavaScript Switch 语句
switch(n){
case 1:
执行代码块 1
break;
case 2:
执行代码块 2
break;
default:
n 与 case 1 和 case 2 不同时执行的代码
}
JavaScript For 循环
JavaScript 支持不同类型的循环:
[1]for - 循环代码块一定的次数
[2]for/in - 循环遍历对象的属性
[3]while - 当指定的条件为 true 时循环指定的代码块
[4]do/while - 同样当指定的条件为 true 时循环指定的代码块
JavaScript Break 和 Continue 语句
break [1]语句跳出循环后,会继续执行该循环之后的代码(如果有的话)[2]switch中使用
continue 语句中断循环中的迭代,如果出现了指定的条件,然后继续循环中的下一个迭代。
如需标记 JavaScript 语句,请在语句之前加上冒号:
label:
语句
break 和 continue 语句仅仅是能够跳出代码块的语句。
语法
break labelname;
continue labelname;
JavaScript 错误 - Throw、Try 和 Catch
try 语句测试代码块的错误。
catch 语句处理错误。
throw 语句创建自定义错误。
JavaScript 测试和捕捉:try 语句允许我们定义在执行时进行错误测试的代码块。
catch 语句允许我们定义当 try 代码块发生错误时,所执行的代码块。JavaScript 语句 try 和 catch 是成对出现的。
try {
//在这里运行代码
}
catch(err){
//在这里处理错误
}
eg:
function message(){
try{
adddlert("Welcome guest!");
}catch(err){
txt="There was an error on this page.\n\n";
txt+="Error description: " + err.message + "\n\n";
txt+="Click OK to continue.\n\n";
alert(txt);
}
}
Throw 语句:允许我们创建自定义错误。
如果把 throw 与 try 和 catch 一起使用,那么您能够控制程序流,并生成自定义的错误消息。
eg:
<script>
function myFunction(){
try{
var x=document.getElementById("demo").value;
if(x=="") throw "值为空";
if(isNaN(x)) throw "不是数字";
if(x>10) throw "太大";
if(x<5) throw "太小";
}
catch(err){
var y=document.getElementById("mess");
y.innerHTML="错误:" + err + "。";
}
}
</script>
JavaScript 表单验证
JavaScript 可用来在数据被送往服务器前对 HTML 表单中的这些输入数据进行验证。
被 JavaScript 验证的这些典型的表单数据有:
[1]用户是否已填写表单中的必填项目?
[2]用户输入的邮件地址是否合法?
[3]用户是否已输入合法的日期?
[4]用户是否在数据域 (numeric field) 中输入了文本?