![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Javascript
Litwak
- 为 未 来 实 现 你 想 要 的 改 变 -
展开
-
js 小数运算精度问题
function decimalDigits(a) { const v = `${a}`; let ret = 0; let flag = false; for (let i = 0; i < v.length; i += 1) { if (flag === true) ret += 1; if (v.charAt(i) === '.') flag = true; } return ret;}function numberCalc(type, a1, a.原创 2021-07-06 20:07:14 · 202 阅读 · 0 评论 -
Delon Cache Service 源码笔记
import { HttpClient } from '@angular/common/http';import { InjectionToken, inject, Injectable, Inject, ɵɵdefineInjectable, ɵɵinject, NgModule } from '@angular/core';import { AlainConfigService } from '@delon/util';import addSeconds from 'date-fns/addSe.原创 2020-09-02 10:24:52 · 337 阅读 · 0 评论 -
代码量统计工具cloc
cloc安装:npm install -g cloc使用 cloc + path:cloc ./如果报错:perl 不是内部或外部命令的问题, 则需要安装perl http://strawberryperl.com安装成功后,再次执行 cloc ./原创 2020-06-09 17:09:59 · 643 阅读 · 0 评论 -
关于javascrip引用对象的说明
如果 a = {x: {}}设置obj = a.x;那么当 x变化时。 obj没有变化。举例node运行:var a = {x: {name: 'hello'}}// undefinedvar obj = a.x// undefinedobj// {name: "hello"}a.x = {m: 1, n: 2}// {m: 1, n: 2}obj// {nam...原创 2019-12-13 10:33:12 · 113 阅读 · 0 评论 -
JavaScript数字金额转换成中文大写展示
// JavaScript数字金额转换成中文大写显示function moneyToString(num) { const digits = ['零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖']; const radices =['', '拾', '佰', '仟', '万', '亿']; const bigRadices ...原创 2019-01-07 17:55:54 · 902 阅读 · 0 评论 -
js实现 throttle 和 debounce
1、throttle节流:drag改变浏览器大小,触发onresize函数,实现拖动每过1秒输出一次,不足1秒,1秒后输出一次。多用于高频操作,如抢票、抢购等,无论点击多少次,只固定间隔执行一次,以减轻压力。原理: 设置canRun作为是否执行的标志。每次触发onresize,都判断canRun的值(true执行,false不执行)。第一次应该执行,所以设置canRun初始值为true。当第...原创 2019-04-10 10:39:12 · 18206 阅读 · 3 评论 -
typescript add函数,要求参数类型相同,否则报错
const add = (...res: Array<string>|Array<number>) => { return res.reduce((total, num) => total + num, 0);}add(1, 2, 3);add('a', 'b', 'c');add('a', 1, 2);原创 2019-04-14 11:12:11 · 612 阅读 · 0 评论 -
石头剪刀布5局3胜和3局2胜的概率是否相同?
代码:// 1赢 0平 -1输function win(m, n) { if (Math.abs(m - n) === 2) { return m < n ? 1 : -1; } else { return m - n; }}function play(sum, m, n) { var winCount = 0; // 总赢得次数 for (v...原创 2019-05-07 14:40:37 · 2970 阅读 · 0 评论 -
javascript 实现日历:生成日历数组
initCalendar() { const now = new Date(); const firstDay = new Date(now.getFullYear(), now.getMonth(), 1); const endDay = new Date( now.getMonth() === 11 ? new Date(now....原创 2019-06-26 19:14:35 · 1830 阅读 · 0 评论 -
javascript 实现 calendar:效果和代码
css:.litwak-calendar { overflow-y: hidden; td { padding: 8px; vertical-align: top; .hd { min-width: 138px; height: 77px; background-position: 0 -325px; ...原创 2019-06-26 20:03:23 · 1036 阅读 · 0 评论 -
js的5个编程建议
5 Programming Patterns I Likejust some patternsMay 11 2019Photo by Desmond Simon on UnsplashIn this post I get into some patterns I try to use while programming. These patterns are observati...转载 2019-07-24 17:36:56 · 184 阅读 · 0 评论 -
二叉树
二叉树var BinaryTree = function() { var Node = function(key) { this.key = key; this.left = null; this.right = null; } var root = null; var insertNode = function(node, newNode) { if (newNode....原创 2018-12-11 16:59:03 · 145 阅读 · 0 评论 -
关于js效率的探索(一)
代码var ts, te;var arr = [];ts = new Date();for (var i = 0; i < 10000000; i++) { arr.push(i);}te = new Date();console.log('push创建时间:' + (te - ts));arr = [];ts = new Date();for (var i = ...原创 2018-12-17 14:08:09 · 296 阅读 · 0 评论 -
排序算法
var SortBank = function() { // 简单的桶排序, 知道元素最大可能值 // 共循环了:m+n+m+n次, 时间复杂度:O(M+N), 浪费空间 var tongSort = function (arr, callback) { var tong = []; for (var i = 0; i <=10; i++) { tong[i] = 0;...原创 2018-12-13 17:34:43 · 151 阅读 · 1 评论 -
冒泡和捕获:事件代理
利用事件流(冒泡和捕获)的特性,我们可以使用一种叫做事件代理的方法操作DOM事件ul id="color-list"> li>redli> li>yellowli> li>blueli> li>greenli> li>blackli> li>whiteli>ul>如果点击页面中的li元素,然后输出li当中的颜色,我们通常会这样写:(原创 2017-08-09 14:57:08 · 262 阅读 · 0 评论 -
dataTables常用设置
// Datatables是一款jquery表格插件'bStateSave' : true,'bJQueryUI' : true,'bPaginate' : true, // 分页按钮'bFilter' : false, // 搜索栏'bLengthChange' : true, // 每行显示记录数'iDisplayLength' : 10, // 每页显示行数'bSort' : f...原创 2018-04-08 12:00:15 · 1297 阅读 · 0 评论 -
js点击复制
// 点击复制 if (this.fulldata[showdata[ln]]) { var copyValue; if (cv.type === 'money') { copyValue = (this.fulldata[showdata[ln]][cv.key] / 100).toFixed(2); } else { copyValue ...原创 2018-04-08 12:42:57 · 474 阅读 · 0 评论 -
多重排序
var items = [ {name: "linc", age: 28, num: 1234}, {name: "linc", age: 28, num: 12345}, {name: "kiki", age: 20, num: 12345}, {name: "张三", age: 26, num: 123}, {name: "张三", age: 27, n转载 2018-05-04 18:11:56 · 483 阅读 · 0 评论 -
取小数点后几位写法比较
1、 返回floatvar a = 123.3167795010225;var data_s = new Date();for (var i = 0; i < 10000; i++) { var b = Math.round(a * 1000000) / 1000000;}var data_e = new Date();console.log(data_s - data_e);...原创 2018-06-11 12:03:58 · 2340 阅读 · 1 评论 -
js导出csv
const a = document.createElement('a'); let href = '《' + this.name + '》数字电影制作费用清单\n上映日期:' + this.releaseDate + '\n'; href += '序号,制作内容,单位,单价(元),数量,金额(元),备注\n'; let i = 1; for (const ...原创 2018-06-06 17:52:49 · 884 阅读 · 0 评论 -
关于js深复制
一、JSON.parse(JSON.stringify(obj)) 缺点: int会转换成string二、原创 2018-06-08 10:06:03 · 293 阅读 · 0 评论 -
CSS position
说明原创 2018-06-08 10:14:12 · 135 阅读 · 0 评论 -
防抖动(angular实现)
方法一:import { Subject } from 'rxjs/Subject';import 'rxjs/add/operator/debounceTime';import 'rxjs/add/operator/distinctUntilChanged'; public searchLLStream: Subject<string> = new Subject<str...原创 2018-06-01 13:08:27 · 5646 阅读 · 3 评论 -
程序员如何提问
<!doctype html><html lang="en"><head> <meta charset="utf-8"> <title>运营平台</title> <base href="/"> <style type=&q原创 2018-06-08 14:57:11 · 837 阅读 · 0 评论 -
前端笔记
某著名企业面试归来总结!原创 2017-07-04 15:17:09 · 12907 阅读 · 1 评论