w的学习笔记06.(2019年1月12日)

1 Math

    数据类型:
    原始类型:
    number string boolean null undefined
    引用类型:
    数组   Math Date ...
     #Math对象:专门提供数学计算的方法对象
    这个对象使用方法比较特殊
    其它对象
    var regexp = new RegExp();
    所有API都是直接通过Math类型名直接调用
    Math.ceil();
    Math.random();


    1:取整
       上取整:只要超过,就取下一个整数
       Math.ceil(num);
       下取整:去掉小数部分,取整数部分
       Math.floor(num);
       四舍五入:小数的部分够5就进1,不够就舍掉
       Math.round(num);
       缺点:只能取整
       如果小数希望四舍五入
       num.toFixed(d);  //d 范围0-20之间

    2:乘方和平方
     乘方:Math.pow(底数,幂);
     开平方:Math.sqrt(num);
    3:最大值,最小值
    最大值:Math.max(值1,值2,值3..);
    最小值: Math.min(值1,值2,值3..);

    如何获取数组中最大值:固定套路
    Math.max.apply(Math,arr);

    4:随机数:Math.random(); 0<=r<1 的小数
    固定套路 1-31
    1:任意min~max之间取随机整数
      var min = 1;
      var max = 31;
      Math.floor(Math.random()*(max-min+1)+min);
    2:如min从0开始
      min = 0;
      max = 10;
      Math.floor(Math.random()*(max+1));
      //           5

    综合示例:产生双色球
    规则: 红球 6 个 1~33
      蓝球 1 个 1~16
    红[2 25 12 3 31 19]
    蓝[15]

    1:创建一个空数组,表示球池
    2:产生6个数值 1-33之间
    2.0:产生一个数值
    2.1:判断是否有重复的球
    2.2:如果有重复当前球不要
    2.3:如果没有重复  保存数组中
     2.2:选下一个球
    3:产生一个蓝色球 1-16 再添加球池中      
    4:输出球池中
2 Date:
    *Date对象:封装一个时间值,提供对时间的操作方法
     Date对象中封装1970年1月1日0开始到运行程序为止
     毫秒数.
     unix->linux
     何时使用:计算日期,创建对象,获取时间日期

     创建:4种
     1: var now = new Date();
       #创建日期对象,客户端系统时间为准
       #以浏览器所在电脑时间准
       now.getTime();//获得日期对象中封装的毫秒数
    
       #自定义时间点
       #示例:
       var now = new Date("1980/10/10");
     3:var now = new Date(yyyy,mm,dd,hh,MM,ss);
       #date对象中,月数0-11结束,现实中月份要-1修下
       #从日期对象中取出月份要+1修正
     4:复制一个日期对象,
       #在计算之前,将旧日期中毫秒数取出,
       #放入一个新的日期对象中保存.
       var old = new Date("yyyy/mm/dd");
       var newDate = new Date(old.getTime());
       #修改newDate不会影响 old对象
3、日期API:
  FullYear Month Date Day
  年       月    日   星期
  getFullYear();获取年份
  setFullYear();修改年份
  1:以上每一个值都有一对 get/set方法
    getXXX();返回
    setXXX();修改
  2:返回值只Date,从1开始31结束
    其余都是从0开始到进制-1结束
    比如:Hours 小时  0-23 --现实中一样不需修正
        Minutes 0-59 --不需要修正
     ***Month 0-11 --比现实中少1 ,需要+1/-1修正
        Day   0-6  --和现实中     
        日 一
        0  1
4、日期计算:2种
  1:使用毫秒直接计算:只适用于计算一天以内的时间
    两日期对象可直接相减=毫秒差
 
5、日期对象转换字符串
   1:toString() 输出的完整的标准日期时间格式,带时区
   2:toLocaleString(); 输出浏览器当地时间的完整格式
   3:toLocaleDateString(); 当地时间日期部分
   4:toLocaleTimeString(); 当地址间时间部分
6、冒泡排序

posted @ 2019-01-12 13:40  发疯的小米粒  阅读(144)  评论(0编辑  收藏  举报