WishMeLz

生活其实很有趣

分类 JS 下的文章

金额大写

金额转换大写引用与:https://github.com/cnwhy/nzh/blob/master/lib/nzh.cn.jsfunction createCommonjsModule(fn, module) { return module = { exports: {} }, fn(module, module.exports), module.exports; } var utils = createCommonjsModule(function (module, exports) { var REG_NUMBER = /^([+-...

markdown 编辑器 md编辑器

腾讯开源的 markdown 编辑器 https://github.com/Tencent/cherry-markdown字节跳动开源的 markdown 编辑器 https://github.com/bytedance/bytemd

文件处理

1、base64转file对象let imageBase64 let blob = dataURLtoBlob(imageBase64) let file = blobToFile(blob, Date.now() + '.png') dataURLtoBlob(dataurl) { var arr = dataurl.split(','), mime = arr[0].match(/:(.*?);/)[1], bstr = atob(arr[1]), ...

文字高亮

const regex = new RegExp(searchContent, "gi"); return text.replace(regex,'<span style="color:#286CFB;">$&</span>');

浏览器麦克风使用

<button type="button" id="start-btn">开始录音</button> <button type="button" id="stop-btn">停止录音</button> <button type="button" id="play-btn">播放录音</button>const startBtn = do...

非对称加密(node-rsa,jsencrypt)

公钥私钥生成随便找个在线生成的http://www.metools.info/code/c80.htmlORconst NodeRSA = require('node-rsa') const fs = require('fs') const newkey = new NodeRSA({ b: 512 }) newkey.setOptions({ encryptionScheme: 'pkcs1' }) let public_key = newkey.exportKey('pkcs8-public') //公钥 let private_key =...

Twitter_Snowflake(雪花算法)

import bigInt from 'big-integer'; // http://peterolson.github.io/BigInteger.js/ /** * Twitter_Snowflake(雪花算法) * * SnowFlake的结构如下(共64bits,每部分用-分开): * 0 - 0000000000 0000000000 0000000000 0000000000 0 - 00000 - 00000 - 000000000000 * | ----------------------|--------...

decimal.js 加减乘除

import Decimal from 'decimal.js'; // 加法 function add(...nums: number[]): number { return nums.reduce((total, num) => new Decimal(total).plus(num), 0).toNumber(); } // 减法 function subtract(...nums: number[]): number { return nums.reduce((total, num) => new Decimal(t...

storage封装

/*** * title: storage.js * Author: wish * Email: - * Time: 2022/7/25 21:32 * last: 2022/7/25 21:54 * Desc: 对存储的简单封装 */ import CryptoJS from 'crypto-js'; // 十六位十六进制数作为密钥 const SECRET_KEY = CryptoJS.enc.Utf8.parse("3333e6e143439161"); // 十六位十六进制数作为密钥偏移量 const SECRET_IV...

数字千分位

num = 12345.45678 num.toLocaleString('en-US',{minimumFractionDigits:5}) minimumFractionDigits:保留小数几位

JS修改input的value触发change事件

var inp = document.querySelector('input'); var ev = new Event('input', { bubbles: true }); ev.simulated = true; inp.value = 'new value' inp.dispatchEvent(ev);

JS生成字母A-Z

var arr = []; for(var i = 65; i < 91; i++){ arr.push(String.fromCharCode(i)); } return arr;

多级目录将数据递归成树状

let data = [ { id: 1, name: "电器", parentid: 0 }, { id: 2, name: "日用品", parentid: 0 }, { id: 3, name: "车用品", parentid: 0 }, { id: 4, name: "电饭煲", parentid: 1 }, { id: 5, name: "毛巾", parentid: 2 }, { id: 6, name: "雨刷器", parentid: 3 }, { id: 7, nam...

时间API

苏宁: https://f.m.suning.com/api/ct.do or http://quan.suning.com/getSysTime.do { "api": "time", "code": "1", "currentTime": 1647506518039, "msg": "" } or { "sysTime2": "2022-03-17 16:46:39", "sysTime1": "20220317164639" } 淘宝: http://api.m.taoba...

JS计算两个日期相差天数

function Start(startDateString, endDateString) { var startDate = Date.parse(startDateString); var endDate = Date.parse(endDateString); if (startDate > endDate) { return 0; } if (startDate == endDate) { return -1; //相等 } var days = (endDate - startDate) / ...

微信机器人PC

https://github.com/cixingguangming55555/wechat-bot在PC端使用工具注入DLL,后台会启动一个WevSocket,实时发送消息.通过监听对呀的消息做处理

1900年至2100年公历、农历互转Js代码

/**公历年月日转农历数据 返回json**/ calendar.solar2lunar(2000,8,23); /**农历年月日转公历年月日**/ calendar.lunar2solar(2000,7,24);Animal: "龙" IDayCn: "廿四" IMonthCn: "七月" Term: "处暑" astro: "处女座" cDay: 23 cMonth: 8 cYear: 2000 gzDay: "癸丑" gzMonth: "甲申" gzYear: "庚辰" isLeap: false isTerm: true isToday: ...

NodeJs抓取页面

npm i cheerio request iconv-lite思路:通过 request 获取到页面。在使用 iconv-lite 编译数据。在使用 cheerio 拿到对应的元素。这里以抓取微博热搜为例const cheerio = require('cheerio'); const request = require('request'); const iconv = require('iconv-lite'); function http(url, decode = 'utf8') { return new Promise((res...

随机数

function getRandom(start, end, fixed = 0) { let differ = end - start let random = Math.random() return (start + differ * random).toFixed(fixed) }getRandom(1,5) 1<= num >=5

保存图片文件,下载图片

function downloadIamge(imgsrc, name) { //下载图片地址和图片名 let image = new Image(); // 解决跨域 Canvas 污染问题 image.setAttribute("crossOrigin", "anonymous"); image.onload = function () { let canvas = document.createElement("canvas"); ...