系统内置对象
Date
```
//1.1 Date -> 相等于java calander
//1.1.1 当前系统时间
var now = new Date();
//1.1.2 构建某一特定时刻的时间
var d1 = new Date(2018,11,26); //月是从0开始,星期日0
//1.1.3
var d2 = new Date(2018,11,26,12,12,12);
//1.1.4 重要的构造方法,根据毫秒数构造.
//时间原点: 1970-1-1 0:0:0 GMT+0
var d3 = new Date(1000);
//给定一个时间,得到这个时间距离时间原点的毫秒数
var diff = now.getTime();
//思考,得到距离当前时间3小时以后的那个时间.
var after = new Date(now.getTime()+3*60*60*1000);
//时间格式 2018-12-27 09:19:00
var year = now.getFullYear();
var month = now.getMonth(); //注意从0开始
var date = now.getDate(); //日期 day星期
var hours = now.getHours();
var minutes = now.getMinutes();
var seconds = now.getSeconds();
var time = year + "-" + (month + 1) + "-" + date + " " + hours +":" +minutes + ":" + seconds;
console.log(time);
```
字符串
```
<script>
function checkemail()
{
//1. 获得文本框的输入值
var email = document.getElementById("email").value;
//2. 规则:
//2.1 必须包含@, @只能有一个
if(email.indexOf("@")== -1 || email.indexOf("@") != email.lastIndexOf("@"))
{
document.getElementById("msg").innerHTML = "必须包含@, @只能有一个";
return;
}
//2.2 必须包含.
if(email.indexOf(".")== -1)
{
document.getElementById("msg").innerHTML = "必须包含.";
return;
}
//2.3 @必须在.前面
if(email.indexOf(".")<email.indexOf("@"))
{
document.getElementById("msg").innerHTML = "@必须在.前面";
return;
}
//2.4 @不能在第一个,.不能在最后一个
if(email.indexOf("@")== 0 ||email.indexOf(".") == email.length-1)
{
document.getElementById("msg").innerHTML = "@不能在第一个,.不能在最后一个";
return;
}
document.getElementById("msg").innerHTML = "输入合法";
}
</script>
```
数组
```
<script>
// js vs java 两点区别 js放的数据类型不唯一, js的数组的变长. js相等于java里的集合
//创建一个数组
var arr = [];
var arr2 = ['a','b']
var arr3 = new Array();
//常用方法
//1. push(e), 从后加
//2. unshift(e), 从前加
//3. pop() 从后删
//4. shift() 从前删
arr.push(1);
arr.push(2);
//使用下标存取数据
arr[1] = 20;
console.log(arr);
//3. 通过下标取数据
for(var i=0; i<arr2.length;i++)
{
console.log(arr2[i]);
}
</script>
```
点名程序
```
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
#name
{
color:red;
font-size: 50px;
text-align: center;
margin-top:100px;
}
</style>
</head>
<body>
<div id="name"></div>
<button onclick="start()">开始</button>
<button onclick="stop()">停止</button>
<script>
function stop()
{
clearInterval(taskid);
}
//1. 创建一个数组
var names = ['周荣睿',"姜金鑫","武海超","贾芸博","大毛","小毛","毛毛"];
function showname()
{
//2. 生成一个随机下标 0 - arr.length-1
var index = Math.floor(Math.random()*names.length);
//3. 把下标对应的值放在span里
document.getElementById("name").innerHTML = names[index];
}
showname();
var taskid = setInterval(showname,100);
</script>
</body>
```
自定义对象:
```
//2. 自定义对象(了解)
//2.1 字面量方式 最主要的应用场景,数据封装.
//{xx:xx,yy:yy}代表对象
var stu1 = {name:"feiyy",age:30,sex:"female",getSex:function(){if(this.sex=="female"){return "女"}else{return "男"}}};
```