js-对象

简介: js-对象

Math对象(Math对象不能new!!!!)

  1. Math.PI 圆周率
  2. Math.abs() 求绝对值
  3. Math.round() 四舍五入

如果负数时, > 0.5 进一 <=0.5 舍去

console.log(Math.round(4.5)); //5
console.log(Math.round(4.4)); //4
console.log(Math.round(-4.5)); // -4
console.log(Math.round(-4.5000001)); // -5
console.log(Math.round(-4.4)); //-4
console.log(Math.round(-4.6)); //-5

Math.ceil() 向上取整

console.log(Math.ceil(4.1)); //5
console.log(Math.ceil(4.9)); //5
console.log(Math.ceil(-4.1)); //-4
console.log(Math.ceil(-4.9)); // -4

Math.floor() 向下取整

console.log(Math.floor(4.1)); //4
console.log(Math.floor(4.9)); //4
console.log(Math.floor(-4.1)); //-5
console.log(Math.floor(-4.9)); // -5
  1. Math.max() 最大值
  • 求数组中最大值: Math.max.apply(null,数组) Math.max( ... 数组名)
  • 求数组中最小值: Math.min.apply(null,数组) Math.min( ... 数组名)
var arr = [2,3,1,4,5,3,4];
console.log(Math.max(2,3,1,4,5,3,4));
console.log(Math.min(2,3,1,4,5,3,4));
求数组的最大值和最小值
console.log(Math.max.apply(null,arr));
console.log(Math.min.apply(null,arr));
方法二
console.log(Math.max(...arr));
console.log(Math.min(...arr));
  1. Math.pow(m,n) 求m的n次方

console.log(math.pow(2,32)); console.log(math.pow(2,64));

  1. Math.sqrt(n) 求n的开方
  2. Math.random() 随机数 0 <= n < 1

万能随机公式

Math.floor(Math.random() * (max - min + 1) + min) 推荐 Math.round(Math.random() * (max - min) + min)

取10以内

Math.floor((Math.random()*10)

取n以内

Math.floor((Math.random()*n)

求0~n的随机数

Math.floor((Math.random()(n+1)) Math.ceil((Math.random()n)

求1~n的随机数

Math.floor((Math.random()*n+1)

随机数封装函数

function random(min,max){
    if(min > max){
        var t = min;
        min = max;
        max = t;
    }
    return Math.floor(Math.random() * (max - min + 1) + min);
}

instanceof :检测当前对象是否属于某一个类返回布尔值

计时器

  1. timer = setInterval(函数,毫秒数) : 间歇性计时器
  • clearInterval(timer) : 取消计时器
  1. timer = setTimeout(函数,毫秒数) : 一次性计时器、延时器、定时器
  • clearTimeout(timer);

Date对象

如何创建日期对象?

  1. var date = new Date();
  2. var date = new Date(2002,2,5); //0~11
  3. var date = new Date(2002,2,5,18,30,50); //0~11
  4. var date = new Date('2002-3-5'); //1~12
  5. var date = new Date('2002-3-5 18:30:50'); //1~12
  6. var date = new Date('2002/3/5'); //1~12
  7. var date = new Date('2002/3/5 18:30:50'); //1~12

如何获取日期对象中的信息?

  1. date.getFullYear() //年
  2. date.getMonth() //月 0~11
  3. date.getDate() //日
  4. date.getDay() //星期
  5. date.getHours() 时
  6. date.getMinutes() 分
  7. date.getSeconds() 秒
  1. date.getMilliseconds() 毫秒
  2. date.getTime() 时间戳 从1970年1月1日时整到现在的毫秒数.

如何设置日期对象中的信息?

  1. date.setFullYear() 年
  2. date.setMonth() 0~11
  3. date.setDate() 日
  4. date.setHours() 时
  5. date.setMinutes() 分
  6. date.setSeconds() 秒
  1. date.setMilliseconds() 毫秒
  2. date.setTime() 时间戳

如何以本地格式的字符串输出日期对象?

  1. date.toLocaleString() 本地格式的日期时间字符串
  2. date.toLocaleDateString() 本地格式的日期字符串
  3. date.toLocaleTimeString() 本地格式的时间字符串

简单的代码异步执行机制

同步:按步骤执行 遇到一条语句,当时就会执行的,就属于同步语句

异步:同时进行

  1. 计算机程序执行分为同步执行,和异步执行:

所谓的异步执行,是一种特殊的程序的执行方式,常见的异步程序有:

定时器(setInterval),延时器(setTimeou),各种事件的绑定(onclick......),ajax请求

异步程序的执行过程

  1. 从第一行代码开始执行
  2. 同步程序开始执行
  3. 遇到异步程序了,暂时不执行,将异步程序暂时存储在“异步池”中
  1. 所有的同步程序执行完毕
  2. 开始执行“异步池”中的异步程序
  • 若有设定了时间的程序,就会先执行
  • 到点了的程序
  • 若有设定的时间是相同的程序,则依照书写顺序执行

setTimeout(function(){ 
    console.log('我是异步执行的程序1'); 
} , 2000);
setTimeout(function(){ 
    console.log('我是异步执行的程序2'); 
} , 1000);
console.log('我是同步执行的程序')
//结果依次是:
//我是同步执行的程序
//我是异步执行的程序2
//我是异步执行的程序1


相关文章
|
1月前
|
JavaScript 前端开发
JavaScript Date(日期) 对象
JavaScript Date(日期) 对象
35 2
|
14小时前
|
JavaScript 前端开发 图形学
JavaScript 中 Math 对象常用方法
【10月更文挑战第29天】JavaScript中的Math对象提供了丰富多样的数学方法,涵盖了基本数学运算、幂运算、开方、随机数生成、极值获取以及三角函数等多个方面,为各种数学相关的计算和处理提供了强大的支持,是JavaScript编程中不可或缺的一部分。
|
14小时前
|
Web App开发 JavaScript 前端开发
如何确保 Math 对象的方法在不同的 JavaScript 环境中具有一致的精度?
【10月更文挑战第29天】通过遵循标准和最佳实践、采用固定精度计算、进行全面的测试与验证、避免隐式类型转换以及持续关注和更新等方法,可以在很大程度上确保Math对象的方法在不同的JavaScript环境中具有一致的精度,从而提高代码的可靠性和可移植性。
|
24天前
|
存储 JavaScript 前端开发
JavaScript 对象的概念
JavaScript 对象的概念
34 4
|
22天前
|
缓存 JavaScript 前端开发
JavaScript中数组、对象等循环遍历的常用方法介绍(二)
JavaScript中数组、对象等循环遍历的常用方法介绍(二)
27 1
|
23天前
|
存储 JavaScript 前端开发
js中函数、方法、对象的区别
js中函数、方法、对象的区别
15 2
|
26天前
|
JavaScript 前端开发 Unix
Node.js 全局对象
10月更文挑战第5天
19 2
|
29天前
|
存储 JavaScript 前端开发
js中的对象
js中的对象
17 3
|
1月前
|
JavaScript 前端开发
JavaScript Math(算数) 对象
JavaScript Math(算数) 对象
19 4
|
1月前
|
Web App开发 JavaScript 前端开发
JavaScript Window - 浏览器对象模型
JavaScript Window - 浏览器对象模型
21 2