微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

8.栈内存,math,时钟

值传递和引用传递

  • js的存储数据方式
    • 栈内存
      • 所有的变量名都是存储在栈里面,js在使用某个变量的时候只会在栈里面查找
      • 基础数据类型的值直接存在栈里面的
      • 复杂数据类型在栈里面存储的是一个地址
      • 在使用复杂数据类型的时候得到就是一个地址,会根据这个地址到堆里面找到这个数据
    • 堆内存
      • 复杂数据类型的值存在堆里面的
      • 在堆内存里面存储数据的时候就会开辟一块空间,得到一个空间地址,会将这个地址存储在栈里面
  • 值传递和引用传递
    • 当我们把一个变量的数据赋值给另一个变量的过程称为传递过程
    • 基础数据类型之间的传递是值传递,直接是把一个变量的值给了另一个变量,这样一个变量变化另一个不受影响
    • 复杂数据类型之间的传递是地址传递(引用传递),直接把一个变量的存储地址赋值给了另一个变量,两个变量地址指向的是同一块堆内存的数据,一个变化另一个也会变化
  • 值传递和引用传递影响
    1. 赋值
    2. 比较

arguments

Math

  • js里面内置的对象
  • 凡是设计到数学运算的

了解

  • 求最大值
    • Math.max(数,数,…)
  • 求最小值
    • Math.min(数,数,…)
  • 求绝对值
    • Math.abs(数)
  • 求n次方
    • Math.pow(底数,次方数)
  • 求平方根
    • Math.sqrt(数)

掌握 取整

  • 向上取整
    • 正数 舍去小数位 整数位+1
    • 负数 舍去小数位 整数位不变
    • Math.ceil(数)
  • 向下取整
    • 正数 舍去小数位 整数位不变
    • 负数 舍去小数位 整数位-1
    • Math.floor(数)
  • 四舍五入取整
    • 如果小数大于4采用向上 小于等于4采用向下
    • Math.round(数)

保留几位小数

  • 借助字符串的toFixed方法
  • 数字.toFixed(位数)

Date

  • 凡是和日期相关都会用到Date
  • 获取计算机本地年月日 时分秒 星期
  • Date是js内置的构造函数
  • 使用Date的流程
    1. 创建一个日期对象
      • var riqi = new Date()
    2. 利用创建出来的日期对象获取年月日 时分秒
      • riqi.getFullYear()
      • riqi.getMonth() 0代表1月份 1代表2月份… 拿到月份做加一的处理
      • riqi.getDate()
      • riqi.getHours()
      • riqi.getMinutes()
      • riqi.getSeconds()
      • riqi.getDay() 0-6 0代表星期天 1代表星期1…
    • 获取是当前电脑系统的时间
  • 国际标准的日期格式
    • YYYY-MM-DD hh:mm:ss
    • YYYY/MM/DD hh:mm:ss
  • 时钟
  • 定时器
    • 可以实现间隔一段时间执行一次代码
    • 可以实现延迟一段时间执行一次代码
    • 间隔定时器
          // fn代表一个函数
          // ms代表毫秒数 1s = 1000ms
          setInterval(fn, ms)
      
    • 延迟定时器
          setTimeout(fn, ms)
      
  • 倒计时
    • ‘2023-01-22 00:00:00’
  • 时间戳

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐