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


相关文章
|
4天前
|
JSON JavaScript 前端开发
JavaScript实现字符串转json对象的方法
JavaScript实现字符串转json对象的方法
|
7天前
|
JavaScript 前端开发
js之DOM 文档对象模型
js之DOM 文档对象模型
8 1
js之DOM 文档对象模型
|
1天前
|
JSON JavaScript 前端开发
如何检查 JavaScript 对象是否为空
【8月更文挑战第18天】
10 0
如何检查 JavaScript 对象是否为空
|
4天前
|
JavaScript 前端开发
JavaScript BOM 的概念(浏览器对象模型)
JavaScript BOM 的概念(浏览器对象模型)
12 1
|
4天前
|
JavaScript 前端开发
JavaScript基础&实战(5)js中的数组、forEach遍历、Date对象、Math、String对象
这篇文章介绍了JavaScript中的数组、Date对象、Math对象以及包装类(String、Number、Boolean),并详细讲解了数组的创建、方法(如forEach、push、pop、unshift、slice、splice)和遍历操作,以及工厂方法创建对象和原型对象的概念。
JavaScript基础&实战(5)js中的数组、forEach遍历、Date对象、Math、String对象
|
4天前
|
JavaScript 前端开发
JavaScript基础&实战(4)js中的对象、函数、全局作用域和局部作用域
这篇文章介绍了JavaScript中对象的基本概念和操作,包括对象属性和方法的使用、对象字面量的创建、函数的定义和作用域的概念,以及全局作用域和局部作用域的区别和特性。
JavaScript基础&实战(4)js中的对象、函数、全局作用域和局部作用域
|
10天前
|
JavaScript 数据处理
如何使用 Vue.js 将数据对象的值放入另一个数据对象中?
如何使用 Vue.js 将数据对象的值放入另一个数据对象中?
|
17天前
|
JavaScript 前端开发 Java
什么是JavaScript原型对象
【8月更文挑战第2天】什么是JavaScript原型对象
39 9
|
4天前
|
JavaScript 前端开发
js之DOM 文档对象模型
js之DOM 文档对象模型
|
4天前
|
JavaScript 前端开发
JS遍历数组和对象的方法有哪些
JS遍历数组和对象的方法有哪些