JavaScript-Math對(duì)象

Math對(duì)象是JavaScript的內(nèi)置對(duì)象,提供一系列數(shù)學(xué)常數(shù)和數(shù)學(xué)方法御蒲。Math對(duì)象只提供了靜態(tài)的屬性和方法掘剪,所以使用時(shí)不用實(shí)例化。

Math對(duì)象的屬性

屬性 說明
Math.E 歐拉常數(shù)画拾,也是自然對(duì)數(shù)的底數(shù), 約等于 2.718.
Math.LN2 2的自然對(duì)數(shù), 約等于0.693.
Math.LN10 10的自然對(duì)數(shù), 約等于 2.303.
Math.LOG2E 以2為底E的對(duì)數(shù), 約等于 1.443.
Math.LOG10E 以10為底E的對(duì)數(shù), 約等于 0.434.
Math.PI 圓周率啥繁,一個(gè)圓的周長(zhǎng)和直徑之比,約等于 3.14159.
Math.SQRT1_2 1/2的平方根, 約等于 0.707.
Math.SQRT2 2的平方根,約等于 1.414.

Math對(duì)象的方法

三角函數(shù)(sin(), cos(), tan(),asin(), acos(), atan(), atan2())是以弧度返回值的青抛∑烀觯可以通過除法Math.PI / 180把弧度轉(zhuǎn)換為角度,也可以通過其他方法來轉(zhuǎn)換蜜另。

方法 說明
Math.abs(x) 返回x的絕對(duì)值.
Math.acos(x) 返回x的反余弦值.
Math.acosh(x) 返回x的反雙曲余弦值.
Math.asin(x) 返回x的反正弦值.
Math.asinh(x) 返回x的反雙曲正弦值.
Math.atan(x) 以介于 -PI/2 與 PI/2 弧度之間的數(shù)值來返回 x 的反正切值.
Math.atanh(x) 返回 x 的反雙曲正切值.
Math.atan2(x, y) 返回 y/x 的反正切值.
Math.cbrt(x) 返回x的立方根.
Math.ceil(x) 返回x向上取整后的值.
Math.clz32(x) Returns the number of leading zeroes of a 32-bit integer.
Math.cos(x) 返回x的余弦值.
Math.cosh(x) 返回x的雙曲余弦值.
Math.exp(x) 返回 Ex, 當(dāng)x為參數(shù), E 是歐拉常數(shù) (2.718...), 自然對(duì)數(shù)的底.
Math.expm1(x) 返回 exp(x)-1 的值.
Math.floor(x) 返回小于x的最大整數(shù)适室。
Math.fround(x) Returns the nearest single precision float representation of a number.
Math.hypot([x[,y[,…]]]) Returns the square root of the sum of squares of its arguments.
Math.imul(x) Returns the result of a 32-bit integer multiplication.
Math.log(x) Returns the natural logarithm (loge, also ln) of a number.
Math.log1p(x) Returns the natural logarithm of 1 + x (loge, also ln) of a number.
Math.log10(x) Returns the base 10 logarithm of x.
Math.log2(x) Returns the base 2 logarithm of x.
Math.max([x[,y[,…]]]) 返回0個(gè)到多個(gè)數(shù)值中最大值.
Math.min([x[,y[,…]]]) 返回0個(gè)到多個(gè)數(shù)值中最小值.
Math.pow(x,y) 返回x的y次冪.
Math.random() 返回0到1之間的偽隨機(jī)數(shù). 可能等于0,但是一定小于1
Math.round(x) 返回四舍五入后的整數(shù).但是Math.round(-4.40)值為-4
Math.sign(x) 返回x的符號(hào)函數(shù), 判定x是正數(shù),負(fù)數(shù)還是0.
Math.sin(x) 返回正弦值.
Math.sinh(x) 返回x的雙曲正弦值.
Math.sqrt(x) 返回x的平方根.
Math.tan(x) 返回x的正切值.
Math.tanh(x) 返回x的雙曲正切值.
Math.toSource() 返回字符串 "Math".
Math.trunc(x) 返回x的整數(shù)部分,去除小數(shù).

使用Math.random()生成隨機(jī)數(shù)

  1. 寫一個(gè)函數(shù)举瑰,返回從min到max之間的隨機(jī)整數(shù)捣辆,包括min不包括max
function getRandomArbitrary(min, max) {
  return min + Math.random() * (max - min);
}
  1. 寫一個(gè)函數(shù),返回從min都max之間的 隨機(jī)整數(shù)此迅,包括min包括max
function getRandomInt(min, max) {
  return min + Math.floor(Math.random() * (max - min + 1));
}
  1. 寫一個(gè)函數(shù)汽畴,生成一個(gè)長(zhǎng)度為 n 的隨機(jī)字符串旧巾,字符串字符的取值范圍包括0到9,a到 z忍些,A到Z鲁猩。
function getRandomInt(min, max) {
  return min + Math.floor(Math.random() * (max - min + 1));
}

function randomStr(n){
  var dict = '1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
  var str = '';
  for(i = 0; i < n;i++){
    str += dict[getRandomInt(0,62)];
  }
  return str;
}
var str = getRandStr(10);
console.log(str);

  1. 寫一個(gè)函數(shù),生成一個(gè)隨機(jī) IP 地址罢坝,一個(gè)合法的 IP 地址為 0.0.0.0~255.255.255.255
function getRandomInt(min, max) {
  return min + Math.floor(Math.random() * (max - min + 1));
}

function randomIp(n) {
  var arr = [];
  for (var i = 0; i < 4; i++) {
    arr.push(getRandomInt(0, 255));
  }
  return arr.join('.');
}
var ip = getRandIP()
console.log(ip)
  1. 寫一個(gè)函數(shù)绳匀,生成一個(gè)隨機(jī)顏色字符串,合法的顏色為#000000~ #ffffff
function getRandomInt(min, max) {
  return min + Math.floor(Math.random() * (max - min + 1));
}

function randomColor() {
  var dict = '1234567890abcdef';
  var arr = '';
  for (var i = 0; i < 6; i++) {
    arr += dict[getRandomInt(0, 16)];
  }
  return '#' + arr;
}
var color = randomColor();
console.log(color);
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末炸客,一起剝皮案震驚了整個(gè)濱河市疾棵,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌痹仙,老刑警劉巖是尔,帶你破解...
    沈念sama閱讀 212,383評(píng)論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異开仰,居然都是意外死亡拟枚,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,522評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門众弓,熙熙樓的掌柜王于貴愁眉苦臉地迎上來恩溅,“玉大人,你說我怎么就攤上這事谓娃〗畔纾” “怎么了?”我有些...
    開封第一講書人閱讀 157,852評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵滨达,是天一觀的道長(zhǎng)奶稠。 經(jīng)常有香客問我,道長(zhǎng)捡遍,這世上最難降的妖魔是什么锌订? 我笑而不...
    開封第一講書人閱讀 56,621評(píng)論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮画株,結(jié)果婚禮上辆飘,老公的妹妹穿的比我還像新娘。我一直安慰自己谓传,他們只是感情好蜈项,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,741評(píng)論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著良拼,像睡著了一般战得。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上庸推,一...
    開封第一講書人閱讀 49,929評(píng)論 1 290
  • 那天常侦,我揣著相機(jī)與錄音浇冰,去河邊找鬼。 笑死聋亡,一個(gè)胖子當(dāng)著我的面吹牛肘习,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播坡倔,決...
    沈念sama閱讀 39,076評(píng)論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼漂佩,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了罪塔?” 一聲冷哼從身側(cè)響起投蝉,我...
    開封第一講書人閱讀 37,803評(píng)論 0 268
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎征堪,沒想到半個(gè)月后瘩缆,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,265評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡佃蚜,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,582評(píng)論 2 327
  • 正文 我和宋清朗相戀三年庸娱,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片谐算。...
    茶點(diǎn)故事閱讀 38,716評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡熟尉,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出洲脂,到底是詐尸還是另有隱情斤儿,我是刑警寧澤,帶...
    沈念sama閱讀 34,395評(píng)論 4 333
  • 正文 年R本政府宣布腮考,位于F島的核電站雇毫,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏踩蔚。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,039評(píng)論 3 316
  • 文/蒙蒙 一枚粘、第九天 我趴在偏房一處隱蔽的房頂上張望馅闽。 院中可真熱鬧,春花似錦馍迄、人聲如沸福也。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,798評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)暴凑。三九已至,卻和暖如春赘来,著一層夾襖步出監(jiān)牢的瞬間现喳,已是汗流浹背凯傲。 一陣腳步聲響...
    開封第一講書人閱讀 32,027評(píng)論 1 266
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留嗦篱,地道東北人冰单。 一個(gè)月前我還...
    沈念sama閱讀 46,488評(píng)論 2 361
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像灸促,于是被迫代替她去往敵國(guó)和親诫欠。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,612評(píng)論 2 350

推薦閱讀更多精彩內(nèi)容