<!-- javascript对象分类
javascript的对象大致可以分为以下几种:
--原生对象:又名本地对象、native object.独立于宿主环境的ECMAScript实现提供的对象。与宿主无关,在
javascript(远景浏览器)、nodejs (node平台) 、jscript(ie浏览器)、typescript(微软平台)等等中均有
这些对象。简单来说,本地对象就是ECMA-262定义的类(引用类型)。在运行过程中动态创建的对象,需要new去
进行实例化对象.
javascript 7种基本数据类型,number(数值型),string(字符串型), boolean(布尔值类型),null(空值类型)
,undefiend(未定义类型) function(函数类型) object(对象类型)
例如:Object、Function、Array、String、Boolean、Number、Date、RegExp、Error、EvalError、RangeError、
ReferenceError、SyntaxError、TypeError、URIError、Global
--内置对象:由ECMAScript实现提供的、独立于宿主环境的所有对象,在ECMAScript 程序开始执行时出现,即
在引擎初始化阶段就被创建好的对象。这意味着开发者不必明确实例化内置对象,它已被实例化了
例如:Global(全局对象)、Math
内置对象是本地对象的一种.
--宿主对象:即由ECMAScript实现的宿主环境提供的对象,包含两大类,一个是宿主提供,一个是自定义类对
象,ECMAScript官方未定义的对象都属于宿主对象,所有非本地对象都是宿主对象。宿主提供对象原理--由宿主
框架通过某种机制注册到ECMAScript引擎中的对象,如宿主浏览器(以远景为参考)会向ECMAScript注入
window对象,构建其实现javascript。
也可以理解为:浏览器提供的对象。所有的BOM和DOM都是宿主对象。
--自定义对象 -->
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<div id="box"></div>
</body>
<!-- math对象方法
<script>
// Math.PI 返回圆周率(约等于3.14159
console.log(Math.PI.toFixed(2));
// Math.E 返回算术常量 e,即自然对数的底数(约等于2.718)
console.log(Math.E);
// Math.ceil 返回的是比参数大或等于的一个整数(向上取整)
console.log(Math.ceil(3.12));// 4
console.log(Math.ceil(-3.12));// -3
// Math.floor 返回值比参数小或等于的一个整数(向下取整)
console.log(Math.floor(3.0));//3
console.log(Math.floor(3.12));//3
console.log(Math.floor(-3.12));//-4
console.log(Math.floor(-3.99));//-4
//Math.round 四舍五入取整
console.log(Math.round(5.987));//6
console.log(Math.round(-5.987));//-6
console.log(Math.round(5.487));//5
//Math.max 最大值
console.log(Math.max(4, 8, 10, 7));
//Math.min 最小值
console.log(Math.min(4, 8, 10, 7));
//Math.pow(x,y) 返回 x 的 y 次幂。
console.log(Math.pow(2, 3));//8
console.log(Math.pow(2, 10));//1024
console.log(2 ** 3);//8 (es6中提供)
//Math.random()*10 返回 0 ~ 10 之间的随机数
console.log(Math.random() * 10);
//应用 :1 到 10 之间的一个随机数
console.log(Math.floor(Math.random() * 10) + 1)
console.log(Math.ceil(Math.random() * 10))
//应用 :[0,255]
Math.round(Math.random() * 255);
//随机颜色运用
function colo() {
return Math.round(Math.random() * 255);//[0,255]
}
var r = colo();
var g = colo();
var b = colo();
var oDiv = document.getElementById('box');
//oDiv.innerHTML = "<div style='width:100px;height:100px;background-color:rgb(" + r + "," + g + "," + b + ");'></div>"
oDiv.innerHTML = `<div style="width:100px;height:100px;background-color:rgb(${r},${g},${b});"></div>`
//注意:${} es6新增,这行代码是用返单号引起来的(键盘tab上面的按键)
//${}更多: /qq_34246965/article/details/108085291
</script>-->
<!-- 日期对象-->
<script>
var mydate = new Date();
console.log(mydate);//包含日期里所有内容
//日期转换为本地时间
console.log(mydate.toLocaleString());//年月日 时分秒
console.log(mydate.toLocaleDateString()); //年月日
console.log(mydate.toLocaleTimeString()); //时分秒
console.log(mydate.getFullYear());//年份
console.log(mydate.getMonth() + 1);//月份 1-12[0-11]
console.log(mydate.getDate());//日期
console.log(mydate.getDay())//星期 [0 ,6] 星期日--0
console.log(mydate.getHours())//小时
console.log(mydate.getMinutes())//分钟
console.log(mydate.getSeconds())//秒
console.log(mydate.getMilliseconds())//毫秒 1s=1000ms
console.log(mydate.getTime());//距离1970.1.1毫秒数
console.log(Date.now());// 时间戳(距离1970.1.1毫秒数)
//设置日期应用( - 7 - 31 10: 00: 00到今天之间毫秒数)
//方案一
var mydate = new Date();//当前时间
var mydate2 = new Date("/7/31 10:00:00");
console.log(mydate2 - mydate); // - 7 - 31 10: 00: 00到今天之间毫秒数
// 方案二
var mydate = new Date();//当前时间
var t1 = mydate.getTime();//当前时间距离1970.1.1毫秒数
var mydate2 = new Date("/7/31 10:00:00");
var t2 = mydate2.getTime();//-7-31 10:00:00 到1970.1.1 之间毫秒数
console.log(t2 - t1);// - 7 - 31 10: 00: 00到今天之间毫秒数
</script>
</html>