zoukankan      html  css  js  c++  java
  • vue.js源码学习分享(四)

    /**
     * Generate a static keys string from compiler modules.//从编译器生成一个静态键字符串模块。
     */
    function genStaticKeys (modules) {
      return modules.reduce(function (keys, m) {
        return keys.concat(m.staticKeys || [])
      }, []).join(',')
    }
    
    /**
     * Check if two values are loosely equal - that is,
     * if they are plain objects, do they have the same shape?
     *///检查两个值是否相等
    function looseEqual (a, b) {
      var isObjectA = isObject(a);
      var isObjectB = isObject(b);
      if (isObjectA && isObjectB) {
        return JSON.stringify(a) === JSON.stringify(b)
      } else if (!isObjectA && !isObjectB) {
        return String(a) === String(b)
      } else {
        return false
      }
    }
    //获取val在arr中的位置
    function looseIndexOf (arr, val) {
      for (var i = 0; i < arr.length; i++) {
        if (looseEqual(arr[i], val)) { return i }
      }
      return -1
    }
    
    /**
     * Ensure a function is called only once.//保证函数只执行一次
     */
    function once (fn) {
      var called = false;
      return function () {
        if (!called) {
          called = true;
          fn();
        }
      }
    }
  • 相关阅读:
    用户和组管理
    权限管理
    文件查找
    文件管理 2
    文件管理
    2016多校训练3_1007(hdu5758 Explorer Bo)
    poj3334(Connected Gheeves)
    POJ1015-Jury Compromise
    使用python来访问Hadoop HDFS存储实现文件的操作
    微信H5自动播放音乐,视频解决方案
  • 原文地址:https://www.cnblogs.com/liuhao-web/p/6669746.html
Copyright © 2011-2022 走看看