zoukankan      html  css  js  c++  java
  • JS基础知识题(下)异步&单线程、其他

    同步和异步的区别是什么?分别举一个同步和异步的例子

    同步会阻塞代码执行,而异步不会,具体参考我的这篇关于JavaScript Event Loop的博客
    比如:alert 是同步;setTimout 是异步

    前端使用异步的场景有哪些?

    • 定时任务:setTimeout、setInverval
    • 网络请求:ajax 请求、动态 加载
    • 事件绑定

    获取 2020-07-19 格式的日期

    function formatDate(dt) {
      if (!dt) {
        dt = new Date()
      }
      var y = dt.getFullYear()
      var m = dt.getMonth() + 1
      var d = dt.getDate()
      if (m < 10) {
        m = '0' + m
      }
      if (d < 10) {
        d = '0' + d
      }
      return y + '-' + m + '-' + d
    }
    const dt = new Date()
    const format_dt = formatDate(dt)
    console.log(format_dt) // 2020-07-19
    

    获取随机数,要求是长度一致的字符串格式

    var random = Math.random()
    var random = random + '0000000000' // 加上10个0
    var random = random.slice(0, 10) // 统一截取长度
    console.log(random)
    

    写一个能遍历对象和数组的通用 forEach 函数

    function forEach(obj, fn) {
      if (obj instanceof Array) {
        // 遍历数组
        obj.forEach(function (item, index) {
          fn(index, item)
        })
      } else {
        // 遍历对象
        for (let key in obj) {
          fn(key, obj[key])
        }
      }
    }
    var arr = [1, 2, 3]
    var obj = {
      a: 11,
      b: 22,
      c: 33,
    }
    // 注意 index, item 位置需要变化满足 fo in 的要求
    forEach(arr, function (index, item) {
      console.log(index, item)
    })
    forEach(obj, function (index, item) {
      console.log(index, item)
    })
    

  • 相关阅读:
    MapReduce 运行流程概要
    HDFS 读写流程概要
    Hadoop源码分析22:dfsclient概要
    Hadoop源码分析22:dfsclient概要
    Matlab安装SVM/RF工具箱的办法
    最大似然估计、最大后验概率估计、贝叶斯公式的理解
    车牌识别
    BP神经网络
    SVM中核函数的理解
    数据库面试
  • 原文地址:https://www.cnblogs.com/cqkjxxxx/p/13339943.html
Copyright © 2011-2022 走看看