1? ? 什么是對(duì)象
? ? JS中所有的事物都是對(duì)象:字符串饺饭,數(shù)值,數(shù)組饰及,函數(shù)……
? ? JS中的萬物皆對(duì)象蔗坯。
?? ?官方的解釋:
? ??什么是對(duì)象,其實(shí)就是一種類型燎含,即引用類型宾濒,而對(duì)象的值就是引用類型的實(shí)例,在ECMAScript中引用類型是一種數(shù)據(jù)結(jié)構(gòu)屏箍,用于將數(shù)據(jù)和功能組織在一起绘梦。它也常常被稱為類橘忱,但ECMAScript中卻沒有類,雖然ECMAScript是一門面向?qū)ο蟮恼Z言卸奉,卻不具備傳統(tǒng)面相對(duì)象語言所支持的類等基本結(jié)構(gòu)
? ? 想要對(duì)象怎么辦钝诚?創(chuàng)建一個(gè)唄
2? ? Math對(duì)象
? ? ? ?1? ? 介紹
????????JavaScript當(dāng)中的Math對(duì)象是原生對(duì)象,提供各種數(shù)學(xué)功能榄棵。該對(duì)象并不是構(gòu)造函數(shù)凝颇,不能夠生成實(shí)例,所有的屬性和方法都必須在Math對(duì)象上調(diào)用
? ? ? ?2? ? Math對(duì)象的方法
? ??????Math.round(3.6);?? ?? ? //四舍五入
? ????? Math.random();?? ?? ? ? //返回一個(gè)大于等于0到小于1的隨機(jī)數(shù)
? ? ????Math.max(a,b);?? ?? ? ? //返回較大的值
? ????? Math.min(a,b);?? ?? ? ? //返回較小的值
? ? ????Math.abs(num);?? ?? ? ? //返回絕對(duì)值
? ? ????Math.ceil(3.6);? ?? ? ? //向上取整
? ? ????Math.floor(3.6);??? ? ? //向下取整
? ? ????Math.pow(x,y);? ?? ? ? ?//x的y次方
? ? ????Math.sqrt(num);? ?? ? ? //開平方
? ? ????Math.sin(x);? ?? ? ? ? ?//x的正弦值疹鳄,返回值在-1到1之間
? ? ????Math.cos(x);? ?? ? ? ? ?//x的余弦值拧略,返回值在-1到1之間
? ? ?? ?sin和cos的x為弧度值,而非角度瘪弓,弧度計(jì)算公式:2 * Math.PI / 360 * 角度
????????Math的屬性
? ????? Math.PI;?? ??? ??? ?? ? //約等于3.14159
? ? ? ? 3 范圍隨機(jī)數(shù)(可封裝函數(shù)垫蛆,便于后期使用)
? ??????
? ? ? ? 4? ? 返回隨機(jī)字符
? 3? ? Date對(duì)象
?? ?var?d?= new?Date();
? ? 從日期對(duì)象獲取信息
?? ?console.log(d.getFullYear());?? ?//獲取年
?? ?console.log(d.getMonth());?? ????//獲取月,注意月份是從0開始
?? ?console.log(d.getDate());?? ??? ?//獲取日
?? ?console.log(d.getDay());?? ?? ? ?//獲取周
?? ?console.log(d.getHours());?? ????//獲取小時(shí)
?? ?console.log(d.getMinutes());? ? ?//獲取分鐘
?? ?console.log(d.getSeconds());? ? ?//獲取秒數(shù)
?? ?console.log(d.getMilliseconds());//獲取毫秒
? ? 時(shí)間戳
?? ?console.log(d.getTime());?? ??? ?//獲取從1970年1月1日至今的毫秒
?? ?console.log(d)?? ??? ??? ??? ????//返回本地時(shí)間腺怯,包含年月日星期時(shí)分秒
? ? 設(shè)置日期:
?? ?? ? 1.粗野模式袱饭,簡(jiǎn)單粗暴,但是會(huì)清零時(shí)分秒
?? ??? ?? ? var d = new Date("2008/8/8");
?? ?? ? 2.復(fù)雜模式
?? ??? ?? ? var d = new Date();
?? ??? ??? ?d.setFullYear(2009);?? ?//設(shè)置年
?? ??? ??? ?d.setMonth(6);?? ?? ? ??//設(shè)置月呛占,超過11虑乖,累加年
?? ??? ??? ?d.setDate(27);?? ?? ? ??//設(shè)置日,超過最大日期晾虑,累加月
?? ??? ??? ?d.setHours(40);?? ?? ? ?//設(shè)置小時(shí)决左,超過24,累加天
?? ??? ??? ?d.setMinutes(40);?? ????//設(shè)置分鐘走贪,超過60,累加小時(shí)
?? ??? ??? ?d.setSeconds(40);?? ????//設(shè)置秒惑芭,超過60坠狡,累加分鐘
?? ??? ??? ?d.setMilliseconds(40);??//設(shè)置毫秒,超過1000遂跟,累加秒
?? ??? ??? ?d.setTime(10000)?? ??? ?//設(shè)置從1970年1月1日過去了多少毫秒
?? ?console.log(d)?? ??? ???//返回更改后的年月日 時(shí)分秒
?? ?注意set系列的返回值
?? ?? ??console.log(d.setFullYear(2009));
?? ?? ??//返回從1970年1月1日逃沿,到當(dāng)前設(shè)置的時(shí)間的毫秒數(shù)
? ? ? ? 計(jì)算兩個(gè)日期的差值
? ? ? ? 這里通過兩個(gè)日期所返回的毫秒數(shù)進(jìn)行計(jì)算
? ??????
????????將函數(shù)結(jié)果返回為一個(gè)對(duì)象,這樣用戶可以自己選擇自己所需要的時(shí)間