一、Date对象
- 网页定时器:
经过多少毫秒重复执行这个任务
window.setInterval(“任务()”,毫秒数);
经过多少毫秒后执行一次
window.setTimeout(“任务()”,毫秒数); - 内置方法
var date=new Date();
alert(date);
alert(date.getYear());
alert(date.getFullYear());
alert(date.getMonth()+1);
alert(date.getDate());
alert(date.getHours());
alert(date.getMinutes());
alert(date.getSeconds());
<body>
当前系统时间是:<span id="span_id"></span>
</body>
<script>
function genNewDate() {
//1.创建日期对象
var date = new Date();
//2.拼接当前系统时间:年-月-日 时:分:秒
var dateStr = date.getFullYear()+"-"+(date.getMonth()+1)+"-"+
date.getDate()+" "+date.getHours()+":"+date.getMinutes()
+":"+date.getSeconds() ;
//3.通过id="span_id"获取span标签对象
var span = document.getElementById("span_id") ;
//4.设置span对象的innerHTML属性:输出文本:dateStr
//innerHTML/innerText
span.innerHTML = "<h2>"+dateStr+"</h2>" ;
}
//5.设置定时器
window.setInterval("genNewDate()",1000) ;
</script>
二、Array对象
- 定义格式
(1)new Array();不指定数组长度
(2)new Array(size);指定长度
(3)var arr=new Array([元素1,元素2…])
注意:
1 数组中长度可以不断的扩容
2 在js中定义数组,不会出现角标越界的问题
3 数组中可以存储任意类型的元素
var arr=new Array([89],["hello",12,"jj"]);
alert(arr.length);//2
var arr=new Array(["hello",12,"jj"]);
alert(arr.length);//1
var arr=["hello",12,"jj"];
alert(arr.length);//3
2.内置方法:
join(var str) :将数组中的元素通过特定str拼接成String
reverse():数组元素进行反转
var arr=["hello",12,"jj"];
arr2=arr.join('-');
arr1=arr.reverse();
alert(arr2);
alert(arr1);
三、String对象
- 定义String对象
在Java中是false,在js中是true
String a=new String("ww");
String b="ww";
System.out.println(a==b);
var str=new String("ww");
var str1="ww";
document.write((str==str1));
- 常用内置方法
* charAt(var index):指定索引处的字符
* indexOf(var str):查询str在字符串中第一次出现的索引
* lastIndexOf(var str);
* fontcolor("#0F0") ;标记当前字符串的颜色
* substring(var start,var end):截取
* substr(var start,var length) :截取指定长度,左闭右开,从0开始
* split(var str):将字符串进行分割,返回字符串数组
var str=new String("i-like-Java");
document.write(str.charAt(2));
document.write(str.indexOf("J"));
document.write(str.lastIndexOf("i"));
document.write(str.fontcolor("red"));
document.write(str.substring(2,4)+"<br/>");
document.write(str.substr(2,4)+"<br/>");
document.write(str.split("-"));
结果:
l73i-like-Javali
like
i,like,Java
四、JS自定义对象
- 定义对象格式:
定义对象和函数定义一样
* function 对象(属性){ 有参方式
* 追加属性
* 追加方法
* }
* 创建对象
var 对象名 = new 对象(实际参数);
2.定义方式
(1)有参构造方法
function Person(name,age){
//追加属性
this.name = name ;
this.age =age ;
//追加方法
this.speak=function(){
alert("名字是"+name+","+"年龄是"+age) ;
}
}
//创建对象
var p = new Person("张三",20) ;
p.speak();
(2)无参构造
function Person(){
}
var p=new Person();
p.name="张三";
p.age=12;
p.speak=function(){
alert("名字是"+p.name+","+"年龄是"+p.age) ;
}
document.write("姓名是:"+p.name+",年龄是:"+p.age+"<br />") ;
p.speak() ;
结果:页面提示和显示文本内容
(3) Object对象:代表所有Js内置的对象的模板
将上面的对象创建改一下:var p = new Object() ;
(4) (推荐,最重要的)Json格式 (字面量值的方式)
XML解析:DOM解析 SAX解析 Json解析(解析速度快,格式符合Map结构)
格式:var 对象名{“key1”:value(任意类型),“key2”:value2,…}
直接在<script></script>这样写
var p ={
//追加属性
"name":"赵六",
"age" :30,
"speak":function(){
alert("调用了"+p.name+"说话的功能") ;
}
} ;
//调用属性:对象名.属性名;
//调用方法:对象名.方法名();
document.write("姓名是:"+p.name+",年龄是:"+p.age+"<br />") ;
p.speak() ;
结果:在页面跳出提示,并在浏览器中显示