一、显示网页时钟Date
与定时器有关的方式
setTimeout() 在指定的毫秒数后调用函数或计算表达式。
- 参数:
1.js代码或者方法对象
2. 毫秒值 - 返回值:唯一标识,用于取消定时器
clearTimeout() 取消由 setTimeout() 方法设置的 timeout。
setInterval() 按照指定的周期(以毫秒计)来调用函数或计算表达式。
clearInterval() 取消由 setInterval() 设置的 timeout。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>008-显示网页时钟</title>
</head>
<body>
<script type="text/javascript">
/*
关于JS中内置的支持类:Date,可以用来获取时间/日期。
*/
//获取系统当前的时间
var nowTime = new Date();
//输出
// document.write(nowTime);//Tue Sep 15 2020 20:41:51 GMT+0800 (中国标准时间)
//转换成具本地语言环境的日期格式
nowTime = nowTime.toLocaleString();
document.write(nowTime);//2020/9/15 下午8:43:31
document.write("<br/>");//在JS样式块中不能用<br/>
// 当以上格式不是自己想要的,可以通过日期获取年月日等信息,自定制日期格式.
var t = new Date();
var year = t.getFullYear(); // 返回年信息,以全格式2020返回不全格式为20.
var month = t.getMonth(); // 月份是:0-11
// var dayOfWeek = t.getDay(); // 获取的一周的第几天(0-6)
var day = t.getDate(); // 获取日信息.
document.write(year + "年" + (month+1) + "月" + day + "日");//2020年9月15日
document.write("<br>");
document.write("<br>");
// 重点:怎么获取毫秒数?(从1970年1月1日 00:00:00 000到当前系统时间的总毫秒数)
//var times = t.getTime();
//document.write(times); // 一般会使用毫秒数当做时间戳. (timestamp)
document.write(t.getTime());//1600174087907
</script>
<script type="text/javascript">
function display() {
var time = new Date();
var nowTime = time.toLocaleString();
document.getElementById("timeDiv").innerHTML = nowTime;
}
// 每隔1秒调用displayTime()函数
function start() {
// 从这行代码执行结束开始,则会不间断的,每隔1000毫秒调用一次display()函数.
v = window.setInterval("display()", 1000);
}
function stop() {
window.clearInterval(v);
}
</script>
<hr/>
<input type="button" value="显示系统时间" onclick="start()"/>
<input type="button" value="系统时间停止" onclick="stop()"/>
<div id="timeDiv"></div>
</body>
</html>
二、数组
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>009-内置支持类Array</title>
</head>
<body>
<!--
JS 中 数组的定义:
格式: var 数组名 =[]; // 空数组
var 数组名 =[1,’abc’,true]; // 定义数组同时赋值元素
var 数组名 = new Array(n); //n表示长度
-->
<script type="text/javascript">
/*
// 创建长度为0的数组
var arr = [];
alert(arr.length);
// 数据类型随意
var arr2 = [1,2,3,false,"abc",3.14];
alert(arr2.length);
// 下标会越界吗
arr2[7] = "test"; //javaScript语 言 中 的 数 组 , 只 要 我 们 通 过 数 组 下 标 赋 值 , 那 么 最 大 的 下 标 值 , 就 会 自 动 的 给 数 组 做 扩 容 操 作 。
document.write("<br>");
// 遍历
for(var i = 0; i < arr2.length; i++){
document.write(arr2[i] + "<br>");
}
// 另一种创建数组的对象的方式
var a = new Array();
alert(a.length); // 0
var a2 = new Array(3); // 3表示长度.
alert(a2.length);
var a3 = new Array(3,2);
alert(a3.length); // 2,里面两个元素,3 2
*/
var a = [1, 2, 3, 9];
var str = a.join("-");
alert(str); // "1-2-3-9"
// 在数组的末尾添加一个元素(数组长度+1)
a.push(10);
alert(a.join("-"));//"1-2-3-9-10"
// 将数组末尾的元素弹出(数组长度-1)
var endElt = a.pop();
alert(endElt);//10
alert(a.join("-"));//"1-2-3-9"
// 注意:JS中的数组可以自动模拟栈数据结构:后进先出,先进后出原则.
// push压栈
// pop弹栈
// 反转数组.
a.reverse();
alert(a.join("-"));//"9-3-2-1"
</script>
</body>
</html>