什么是JavaScript
以下仅列举与java语言不同之处
- JavaScript是一种可以与HTML混合使用的脚本语言,其编写的程序可以直接在浏览器中解释执行
- JavaScript是基于对象和事件的脚本语言
- JavaScript是弱类型语言
- JavaScript可以写在<script&rt;标签中,或者在单独写在.js文件中引入
语法
- JavaScript共有6种数据类型
undefined,null,boolean,string,number,object - 字符串运算符“+”
//13
var a=1; var b="3";
alert(a+b);
//trueddd
var b=true; var c="ddd";
alert(b+c);
- 数组
//数组长度可变
var array = new Array(3);
var array = [1,2,3,4,5];
var array = [1,’2’,true,9.8];
alert(array,length);
- 函数
//典型函数
function FuncName(args){
expression;
}
//动态函数
var show = new Function(
"x", "y",
"var sum = x+y; return sum;"
);
//匿名函数
var show = function(){
alert("function");
}
面向对象
严格的讲,JavaScript不是一种面向对象的语言,因为它没有提供面向对象语言所具有的一些明显的特征,例如继承和多态。因此,设计者把它称为“基于对象”,而不是“面向对象”的语言。
类是对象的抽象,但JavaScript中没有类的概念,创建一个对象只要定义一个该对象的构造函数并通过它创建对象即可。
//构造器
function Stu(name, age){
//私有属性和方法
var id = 1;
function showId(){
alert(id);
}
//公有属性和方法
this.name = name;
this.age = age;
this.printCard = function(){
showId();
alert("name:"+this.name+"age"+this.age);
}
}
//创建对象并调用方法
M = new Stu("小明", 3);
M.printCard();
prototype 返回对象类型原型的引用
function array_max(){
//谁调用这个方法,谁就是this
var i, max=this[0];
for(i=1; i<this.length; i++){
if(max<this.[i])
max = this[i];
}
return max;
}
//Array.prototype为Array的一个引用,下句相当于重写了max方法
Array.prototype.max = array_max;
var x = new Array(1,2,3);
var y = x.max();
1.时间对象
//默认系统当前时间
var currentTime = new Date();
//Date对象-->String对象
alert(currentTime.toLocaleString());
2.数学对象
//[0,1)随机数
Math.random();
3.字符串对象
//角标
var str = "helloworld".substring(2,4);//ll
//偏移量
var str = "helloworld".substr(2,4);//llow
4.弹框
alert("警告");
prompt("询问");
confirm("确认");
事件机制
截图自w3school
HTML DOM
Document Object Model。DOM是W3C定义的访问HTML和XML文档的标准,它是是中立于平台和语言的接口,它允许程序和脚本动态地访问和更新文档的内容、结构和样式。
HTML封装数据,CSS表现样式,DOM封装标签,而JavaScript通过程序设计融合三者,完成动态效果的操作。
在 HTML DOM 中,所有事物都是节点,DOM 是被视为节点树的 HTML。即HTML每个标签在DOM中都是一个节点对象。节点类型包括文档节点、注释节点、文本节点、属性节点、元素节点。
每个节点都有三个属性,分别为:
• nodeName
• nodeValue
• nodeType
获取节点对象的方法有三种:
• getElementById()
• getElementsByName() 返回数组
• getElementsByTagName()