当前位置: 首页>>代码示例>>TypeScript>>正文


TypeScript lodash.now函数代码示例

本文整理汇总了TypeScript中lodash.now函数的典型用法代码示例。如果您正苦于以下问题:TypeScript now函数的具体用法?TypeScript now怎么用?TypeScript now使用的例子?那么, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了now函数的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。

示例1: Promise

(async () => {
  const start = lodash.now();
  console.log(2);

  await new Promise(resolve => {
    setTimeout(() => {
      console.log(4);
      resolve();
    }, 2000);
  });

  console.log(5);
  console.log(lodash.now() - start + 'ms passed.');
})();
开发者ID:ovrmrw,项目名称:ts-babel-node-sample,代码行数:14,代码来源:server.ts

示例2: getJson

export function getJson(url, data, onError) {
  const d = data ? _.cloneDeep(data) : {};
  d.t = _.now();
  d.lang = getLocale();

  const req = get(url, d);
  return handleRequest(req, onError);
}
开发者ID:xlsdg,项目名称:umi-dva-antd-typescript-starter,代码行数:8,代码来源:request.ts

示例3: startTimer

 startTimer(): number {
   if (!this.proccessing) {
     console.log('Start Timer');
     this.proccessing = true;
     this.startTime = lodash.now();
     this.filterId = '' + this.startTime + lodash.uniqueId();
     this.endTime = null;
     this.textFinished = null;
   }
   return this.startTime;
 }
开发者ID:ovrmrw,项目名称:shuttle-store-sample,代码行数:11,代码来源:page4.component.ts

示例4: canUpdateVersion

  private static canUpdateVersion(): boolean {
    const versionCheckInfoFromLocalStorage = localStorage.getItem("versionCheckInfo");

    if (_.isEmpty(versionCheckInfoFromLocalStorage)) {
      return true;
    }

    const versionCheckInfo: VersionCheckInfo = JSON.parse(versionCheckInfoFromLocalStorage as string);

    const lastUpdateAt: Date = new Date(versionCheckInfo.last_updated_at);
    const halfHourAgo: Date  = new Date(_.now() - 30 * 60 * 1000);

    return halfHourAgo > lastUpdateAt;
  }
开发者ID:Skarlso,项目名称:gocd,代码行数:14,代码来源:version_updater.ts

示例5: constructor

 constructor(options?: StateOptions) {
   if (options) {
     const {key, value, osn, ruleOptions} = options;
     this.key = key ? key : null;
     this.value = lodash.isUndefined(value) ? null : value;
     this.osn = osn;
     this.rule = ruleOptions ? new StateRule(ruleOptions) : null;
   } else {
     this.key = null;
     this.value = null;
     this.osn = null;
     this.rule = null;
   }
   this.timestamp = lodash.now();
 }
开发者ID:ovrmrw,项目名称:shuttle-store-sample,代码行数:15,代码来源:store.type.ts

示例6: stopTimer

 stopTimer(valid?: boolean): void {
   if (this.proccessing) {
     console.log('Stop Timer');
     if (valid) {
       this.endTime = lodash.now();
       this.textFinished = this.text;
       this.textMissed = null;
       toastr.success('PERFECT! ' + this.result + '\nLet\'s watch True-time Replay.'); // alert('COMPLETED! ' + this.result + "\nLet's watch True-time Replay.");
       this.startTruetimeReplay();
     } else {
       this.textMissed = this.text;
     }
     this.text = null;
     this.proccessing = false;
   }
 }
开发者ID:ovrmrw,项目名称:shuttle-store-sample,代码行数:16,代码来源:page4.component.ts

示例7: alert

 .do(event => { // 処理中のキー入力イベントをハンドリングする。
   if (this.proccessing) {
     const keyCode = event.keyCode;
     if (keyCode - previousKeyCode !== 1) {
       toastr.error('OOPS! TRY AGAIN.'); // alert('OOPS! TRY AGAIN.');
       this.stopTimer();
     } else {
       const now = lodash.now();
       const keyInput: KeyInput = {
         code: event['code'],
         keyCode: keyCode,
         filterId: this.filterId,
         diff: keyCode === 65 /* keyA */ ? 0 : now - previousTime
       };
       this.service.putKeyInput(keyInput).then(x => x.log('KeyInput')); // serviceを経由してStoreに値を送り、戻り値として得たStateをコンソールに出力する。
       previousTime = now;
       previousKeyCode = keyCode;
     }
   }
 })
开发者ID:ovrmrw,项目名称:shuttle-store-sample,代码行数:20,代码来源:page4.component.ts

示例8: gabageCollectorFastTuned

export function gabageCollectorFastTuned(states: State[]): State[] {
  if (states.length === 0) { return states; }
  console.time('gabageCollectorFastTuned');
  // const keys = stateObjects.filter(obj => obj && typeof obj === 'object').map(obj => Object.keys(obj)[0]);
  let keys: string[] = [];
  // let i = 0;
  for (let i = 0; i < states.length; i = (i + 1) | 0) {
    const state = states[i];
    if (state && !!state.key) { // この段階でstate.keyがnullのものは除外される。
      keys.push(state.key);
    }
    // i = (i + 1) | 0;
  }
  const uniqKeys = lodash.uniq(keys);
  // console.log('Keys: ' + uniqKeys.join(', '));
  let newObjs: State[] = [];

  // key毎に保存最大数を超えたものをカットして新しい配列を作る。
  // uniqKeys.forEach(key => {
  //   const objs = stateObjects.filter(obj => obj && key in obj);
  //   if (objs.length > maxElementsByKey) {
  //     objs.reverse().slice(0, maxElementsByKey).reverse().forEach(obj => newObjs.push(obj));
  //   } else {
  //     objs.forEach(obj => newObjs.push(obj));
  //   }
  // });
  // let j = 0;
  for (let j = 0; j < uniqKeys.length; j = (j + 1) | 0) {
    // const objs = stateObjects.filter(obj => obj && uniqKeys[i] in obj);
    const identifier = uniqKeys[j];
    let objs: State[] = [];
    // let k = 0;
    for (let k = 0; k < states.length; k = (k + 1) | 0) {
      const state = states[k];
      if (state && state.key === identifier) {
        objs.push(state);
      }
      // k = (k + 1) | 0;
    }

    // StateRuleが保持されている場合、最大保存数を差し替える。
    const stateLast = objs[objs.length - 1]; // 配列の末尾を取得
    const limit = stateLast.rule && stateLast.rule.limit ? stateLast.rule.limit : DEFAULT_LIMIT;
    const filterId = stateLast.rule && stateLast.rule.filterId ? stateLast.rule.filterId : null;

    // uniqueIdルールが指定されている場合、同じuniqueIdのものだけ抽出する。
    if (filterId) {
      objs = objs.filter(obj => obj.rule && obj.rule.filterId ? obj.rule.filterId === filterId : true);
    }

    // durationルールが指定されている場合、durationを過ぎていないものだけ抽出する。
    const now = lodash.now();
    objs = objs.filter(obj => obj.rule && obj.rule.duration ? obj.timestamp + obj.rule.duration > now : true);

    // lockルールが指定されている場合、lock=true以降の要素は排除する。
    // put関数の中で制御する。
    // let isLocked = false;
    // objs = objs.reduce((p, obj) => {
    //   if (!isLocked) { p.push(obj); } // 必ず最初の要素はpushされるようにする。
    //   if (obj.rule && obj.rule.lock) { isLocked = true; }      
    //   return p;
    // }, []);


    if (objs.length > limit) {
      // objs.reverse().slice(0, maxElementsByKey).reverse().forEach(obj => newObjs.push(obj));
      
      // console.log(objs);
      const ary = objs.slice(objs.length - limit); // 先頭側から削除する。
      // console.log(ary);
      
      // let l = 0;
      for (let l = 0; l < ary.length; l = (l + 1) | 0) {
        newObjs.push(ary[l]);
        // l = (l + 1) | 0;
      }
    } else {
      // objs.forEach(obj => newObjs.push(obj));
      // let l = 0;
      for (let l = 0; l < objs.length; l = (l + 1) | 0) {
        newObjs.push(objs[l]);
        // l = (l + 1) | 0;
      }
    }
    // j = (j + 1) | 0;
  }
  newObjs = newObjs.sort((a, b) => a.osn > b.osn ? 1 : -1); // ObjectSequenceNumberの昇順で並べ替える。
  console.timeEnd('gabageCollectorFastTuned');
  return newObjs;
}
开发者ID:ovrmrw,项目名称:shuttle-store-sample,代码行数:90,代码来源:store.helper.ts


注:本文中的lodash.now函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。