内置对象:Array,Object,Function,Math,Data
1.Math
Math.ceil --上取整
Math.floor --下取整
Math.round --四舍五入取整
Math.max --最大值
Math.min --最小值
Math.random() --获取随机数
console.log(Math.random()) /* 0<=num<1 0<num<0.999*/
/* 1-100之间的随机数 1<=num<=100 */
console.log(Math.floor(Math.random()*100)+1)
2.Data
//获取当前时间
var oDate = new Date();
var year = oDate.getFullYear(); //年份
var month = oDate.getMonth(); //月份
var date = oDate.getDate(); //天
var hour = oDate.getHours(); //小时
var minute = oDate.getMinutes(); //分钟
var second = oDate.getSeconds(); //秒钟
var mill = oDate.getTime();---获取毫秒 //毫秒
//月份从0开始
var month = oDate.getMonth()+1;
//星期从0开始,0表示星期天
//0,1,2,3,4,5,6
var day = oDate.getDay();
例子
1.获取当前时间
<p id="p"></p>
<script>
setInterval(function(){
var oDate=new Date();
var hour=oDate.getHours();
var minute=oDate.getMinutes();
var seconds=oDate.getSeconds();
function transform(params){
return params=params<10?"0"+params:params;
}
hour=transform(hour)
minute=transform(minute)
seconds=transform(seconds)
var sum=hour+":"+minute+":"+seconds;
var p=document.getElementById("p")
p.innerHTML=sum;
},1000)
</script>
2.距离某个时间还有多长时间
<p id="p"></p>
<script>
setInterval(function(){
var oDate=new Date();
var playTime=new Date("2019-09-19 09:00:00").getTime();//返回距离某个时间之间的毫秒数
var mill=oDate.getTime(); //当前系统时间的毫秒数
var gapTime=playTime-mill; //当前时间与距离某个时间两者之间的时间差
var seconds=Math.floor(gapTime/1000); //获取距离某个时间的秒数
var hours=Math.floor(seconds/3600); //获取小时 1h=60m 1m=60s 1h=60*60
seconds=seconds%3600;
var minutes=Math.floor(seconds/60);
seconds=seconds%60;
function transform(params){
return params=params<10?"0"+params:params;
}
var sum=transform(hours)+":"+transform(minutes)+":"+transform(seconds);
document.getElementById("p").innerHTML=sum;
},1000)
</script>
3.变换时间格式
<script>
var str="2019/09/17 03:27:10";
/* 2019-09-17 03/27/10 */
var arr=str.split(" ");
var day=arr[0].split("/").join("-"); //join --将数组变成字符串
var time=arr[1].split(":").join("/");
var sum=day+" "+time;
console.log(sum)
</script>
内置对象详细介绍
内置对象(不要NEW 直接引用——只有MATH GLOBAL)
ECMA-262 把内置对象(built-in object)定义为“由 ECMAScript 实现提供的、独立于宿主环境的所有对象,在 ECMAScript 程序开始执行时出现”。这意味着开发者不必明确实例化内置对象,它已被实例化了。
同样是“独立于宿主环境”。根据定义我们似乎很难分清“内置对象”与“本地对象”的区别。而ECMA-262 只定义了两个内置对象,即 Global 和 Math (它们也是本地对象,根据定义,每个内置对象都是本地对象)。
如此就可以理解了。内置对象是本地对象的一种。而其包含的两种对象中,Math对象我们经常用到,可这个Global对象是啥东西呢?
Global对象是ECMAScript中最特别的对象,因为实际上它根本不存在!在ECMAScript中,不存在独立的函数,所有函数都必须是某个对象的方法。
类似于isNaN()、parseInt()和parseFloat()方法等,看起来都是函数,而实际上,它们都是Global对象的方法。而且Global对象的方法还不止这些。有关Global对象的具体方法和属性,感兴趣的同学可以看一下这里:JavaScript 全局对象参考手册