JavaScript
我的小狗很很可爱
快乐的游标卡尺~
展开
-
前端优化方法大全
前端优化方法大全原创 2022-07-13 12:30:00 · 6424 阅读 · 0 评论 -
解释parseInt($(“#UserRoleSlt“).val(), 10);
很多小伙伴好奇parseInt($("#UserRoleSlt").val(), 10); 这一行代码里面的数字10 是什么意思。下面我来为大家解释一下:原创 2021-06-02 16:02:02 · 229 阅读 · 0 评论 -
巧用转码函数编程规范少出错
界面输入DevCfg.convertChar = function (str) {return encodeURIComponent(str.replace(/(\\|\"|\n|\r|\t)/g, "\\$1"));};原创 2021-06-02 15:02:36 · 66 阅读 · 0 评论 -
input type=password 无法输入中文的特殊字符
最近有个新发现,input框 type=password时,输入的特殊字符全部都是英文的,一般来讲,密码不支持中文,所以不容易发现这个。巧了,无意间就发现wu'fa原创 2021-05-28 11:42:53 · 1471 阅读 · 1 评论 -
setInterval和setTimeout的最大区别
这两个方法都是定时器setInterval:循环执行的setTimeout:只执行一次当然,如果使用了定时器,注意要销毁,防止内存泄漏componentWillUnmount() { clearInterval(this.interval); }原创 2021-05-18 15:51:33 · 78 阅读 · 0 评论 -
使用了定时器循环调用之后,影响antd时间框无法选择的问题
之前写了一个时间按秒更新的方法,当时实现了这个功能,不过后期发现同一个页面的时间选择框无法选择月份和年份经过分析定位,发现原来是因为事件冒泡,所以我们要阻止事件冒泡,即在<DatePicker 日期选择框外面包一层div ,:<div className="config-label-right" onClick={(e) => { e.stopPropagation() }}> 这样就可以防止事件冒泡了。经了解:事件冒泡:是由内到外的事件捕获:由...原创 2021-05-18 15:47:42 · 238 阅读 · 2 评论 -
ip地址和网关的校验js react
不说废话,直接上菜~/** * 检查IP、子网掩码和默认网关组合是否合理 * @param {} IP * @param {} Mask * @param {} DefaultGatWay * @return {Boolean} */ValideIPAndMaskAndDefaultGatWay = (IP, Mask, DefaultGatWay) => { var IPkArr = IP.split('.'); var MaskkArr = Mask.split原创 2021-04-26 19:13:12 · 586 阅读 · 0 评论 -
【简单】1688. 比赛中的配对次数(js)
题目:给你一个整数 n ,表示比赛中的队伍数。比赛遵循一种独特的赛制:如果当前队伍数是 偶数 ,那么每支队伍都会与另一支队伍配对。总共进行 n / 2 场比赛,且产生 n / 2 支队伍进入下一轮。如果当前队伍数为 奇数 ,那么将会随机轮空并晋级一支队伍,其余的队伍配对。总共进行 (n - 1) / 2 场比赛,且产生 (n - 1) / 2 + 1 支队伍进入下一轮。返回在比赛中进行的配对次数,直到决出获胜队伍为止。/** * @param {number} n * @return原创 2021-04-20 16:09:19 · 152 阅读 · 0 评论 -
【简单】1450. 在既定时间做作业的学生人数(js)
题目:给你两个整数数组 startTime(开始时间)和 endTime(结束时间),并指定一个整数 queryTime 作为查询时间。已知,第 i 名学生在 startTime[i] 时开始写作业并于 endTime[i] 时完成作业。请返回在查询时间 queryTime 时正在做作业的学生人数。形式上,返回能够使 queryTime 处于区间 [startTime[i], endTime[i]](含)的学生人数。/** * @param {number[]} startTime *原创 2021-04-20 14:42:03 · 98 阅读 · 0 评论 -
【简单】28. 实现 strStr()(js)
实现strStr()函数。给你两个字符串haystack 和 needle ,请你在 haystack 字符串中找出 needle 字符串出现的第一个位置(下标从 0 开始)。如果不存在,则返回-1 。说明:当needle是空字符串时,我们应当返回什么值呢?这是一个在面试中很好的问题。对于本题而言,当needle是空字符串时我们应当返回 0 。这与 C 语言的strstr()以及 Java 的indexOf()定义相符。/** * @param {st...原创 2021-04-20 10:33:27 · 140 阅读 · 0 评论 -
【简单】27. 移除元素(js)
给你一个数组nums和一个值val,你需要原地移除所有数值等于val的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用O(1)额外空间并原地修改输入数组。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。说明:为什么返回数值是整数,但输出的答案是数组呢?请注意,输入数组是以「引用」方式传递的,这意味着在函数里修改输入数组对于调用者是可见的。你可以想象内部操作如下:// nums 是以“引用”方式传递的。也就是说,不对实参作任何拷...原创 2021-04-19 17:25:57 · 549 阅读 · 0 评论 -
【简单】9. 回文数(js)
题目:给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。例如,121 是回文,而 123 不是。输入:x = -121输出:false解释:从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。/** * @param {number} x * @return {boolean} */var isPalindrome = function(x)原创 2021-04-19 14:53:22 · 190 阅读 · 0 评论 -
【简单】1. 两数之和(js)
题目:给定一个整数数组 nums和一个整数目标值 target,请你在该数组中找出 和为目标值 的那两个整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。输入:nums = [2,7,11,15], target = 9输出:[0,1]解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。/** * @param {number[]} nums * @param...原创 2021-04-15 19:46:36 · 106 阅读 · 0 评论 -
【简单】7. 整数反转(js)
题目:给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。如果反转后整数超过 32 位的有符号整数的范围[−231,231− 1] ,就返回 0。假设环境不允许存储 64 位整数(有符号或无符号)。输入:x = -123输出:-321-231<= x <= 231- 1/** * @param {number} x * @return {number} */var reverse = function(x) { v...原创 2021-04-15 16:50:37 · 183 阅读 · 0 评论 -
【简单】LCP 01. 猜数字(js)
题目:小A 和 小B 在玩猜数字。小B 每次从 1, 2, 3 中随机选择一个,小A 每次也从 1, 2, 3 中选择一个猜。他们一共进行三次这个游戏,请返回 小A 猜对了几次?输入的guess数组为 小A 每次的猜测,answer数组为 小B 每次的选择。guess和answer的长度都等于3。输入:guess = [1,2,3], answer = [1,2,3]输出:3解释:小A 每次都猜对了。/** * @param {number[]} guess * @param {原创 2021-04-14 15:01:13 · 93 阅读 · 0 评论 -
【简单】1342. 将数字变成 0 的操作次数(js)
题目:给你一个非负整数num,请你返回将它变成 0 所需要的步数。 如果当前数字是偶数,你需要把它除以 2 ;否则,减去 1 。输入:num = 14输出:6解释:步骤 1) 14 是偶数,除以 2 得到 7 。步骤 2) 7 是奇数,减 1 得到 6 。步骤 3) 6 是偶数,除以 2 得到 3 。步骤 4) 3 是奇数,减 1 得到 2 。步骤 5) 2 是偶数,除以 2 得到 1 。步骤 6) 1 是奇数,减 1 得到 0 。/** * @param {number..原创 2021-04-14 14:53:23 · 144 阅读 · 0 评论 -
【简单】1470. 重新排列数组(js)
题目:给你一个数组 nums ,数组中有 2n 个元素,按 [x1,x2,...,xn,y1,y2,...,yn] 的格式排列。请你将数组按 [x1,y1,x2,y2,...,xn,yn] 格式重新排列,返回重排后的数组。输入:nums = [2,5,1,3,4,7], n = 3输出:[2,3,5,4,1,7]解释:由于 x1=2, x2=5, x3=1, y1=3, y2=4, y3=7 ,所以答案为 [2,3,5,4,1,7]/** * @param {number[]} n.原创 2021-04-14 14:33:28 · 183 阅读 · 0 评论 -
【简单】LCP 06. 拿硬币(js)
题目:桌上有n堆力扣币,每堆的数量保存在数组coins中。我们每次可以选择任意一堆,拿走其中的一枚或者两枚,求拿完所有力扣币的最少次数。输入:[4,2,1]输出:4解释:第一堆力扣币最少需要拿 2 次,第二堆最少需要拿 1 次,第三堆最少需要拿 1 次,总共 4 次即可拿完。/** * @param {number[]} coins * @return {number} */var minCount = function(coins) { var num ...原创 2021-04-14 14:27:39 · 193 阅读 · 0 评论 -
react js清除浏览器缓存
最近遇到这样一个问题,项目在谷歌上完全正常,但是到了ie浏览器,发现点击保存之后界面没有刷新,打开F12,接口调用成功,下发参数正确,查询返回的结果还是原来那个。定位之后,发现查询走的是浏览器缓存...F12已接收那显示(来自缓存),时间0秒。下面就是清缓存的方法:加上这句 Pragma: 'no-cache',headers: { Pragma: 'no-cache', //解决IE 11走缓存无法刷新问题 Aut...原创 2021-04-14 09:21:57 · 2059 阅读 · 0 评论 -
【简单】1295. 统计位数为偶数的数字(js)
题目:给你一个整数数组nums,请你返回其中位数为偶数的数字的个数。输入:nums = [12,345,2,6,7896]输出:2解释:12 是 2 位数字(位数为偶数)345 是 3 位数字(位数为奇数)2 是 1 位数字(位数为奇数)6 是 1 位数字 位数为奇数)7896 是 4 位数字(位数为偶数)因此只有 12 和 7896 是位数为偶数的数字/** * @param {number[]} nums * @return {number} */...原创 2021-04-14 09:11:40 · 290 阅读 · 0 评论 -
【简单】1108. IP 地址无效化(字符串替换)(js)
题目:给你一个有效的IPv4地址address,返回这个 IP 地址的无效化版本。所谓无效化IP 地址,其实就是用"[.]"代替了每个"."。输入:address = "1.1.1.1"输出:"1[.]1[.]1[.]1"/** * @param {string} address * @return {string} */var defangIPaddr = function(address) { var str = address.replaceAll('.'...原创 2021-04-14 08:58:06 · 149 阅读 · 0 评论 -
【简单】1512. 好数对的数目(js)
题目:给你一个整数数组 nums 。如果一组数字 (i,j) 满足 nums[i] == nums[j] 且 i < j ,就可以认为这是一组 好数对 。返回好数对的数目。输入:nums = [1,2,3,1,1,3]输出:4解释:有 4 组好数对,分别是 (0,3), (0,4), (3,4), (2,5) ,下标从 0 开始/** * @param {number[]} nums * @return {number} */var numIdenticalPairs原创 2021-04-09 16:57:50 · 76 阅读 · 0 评论 -
【简单】1672. 最富有客户的资产总量(js)
题目:给你一个 m x n 的整数网格 accounts ,其中 accounts[i][j] 是第 i 位客户在第 j 家银行托管的资产数量。返回最富有客户所拥有的 资产总量 。客户的 资产总量 就是他们在各家银行托管的资产数量之和。最富有客户就是 资产总量 最大的客户。输入:accounts = [[1,5],[7,3],[3,5]]输出:10解释:第 1 位客户的资产总量 = 6第 2 位客户的资产总量 = 10第 3 位客户的资产总量 = 8第 2 位客户是最富有.原创 2021-04-09 16:30:44 · 101 阅读 · 0 评论 -
【简单】771. 宝石与石头(js)
题目:给定字符串J代表石头中宝石的类型,和字符串S代表你拥有的石头。S中每个字符代表了一种你拥有的石头的类型,你想知道你拥有的石头中有多少是宝石。J中的字母不重复,J和S中的所有字符都是字母。字母区分大小写,因此"a"和"A"是不同类型的石头。/** * @param {string} jewels * @param {string} stones * @return {number} */var numJewelsInStones = function(jewels,...原创 2021-04-09 16:16:59 · 138 阅读 · 0 评论 -
【简单】剑指 Offer 58 - II. 左旋转字符串(js)
题目:字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现字符串左旋转操作的功能。比如,输入字符串"abcdefg"和数字2,该函数将返回左旋转两位得到的结果"cdefgab"。/** * @param {string} s * @param {number} n * @return {string} */var reverseLeftWords = function(s, n) {var a = s.substring(0,n);var b = s原创 2021-04-09 16:14:16 · 103 阅读 · 0 评论 -
【简单】1480. 一维数组的动态和(js)
题目描述:给你一个数组 nums 。数组「动态和」的计算公式为:runningSum[i] = sum(nums[0]…nums[i]) 。请返回 nums 的动态和。/** * @param {number[]} nums * @return {number[]} */var runningSum = function(nums) { if(nums.length>1){ var returnData = nums[0]; var num原创 2021-04-09 15:02:31 · 407 阅读 · 0 评论 -
react js 获取服务器上的文件内容
export default class getCfgShow { static fetch() { return new Promise(function(resolve, reject) { fetch('访问的文件路径').then(function (response) { return response.json(); }).then(function (data) { ...原创 2021-04-07 10:41:55 · 924 阅读 · 0 评论 -
日常笔记(一)js解构赋值
参考https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment工作中遇到<body class="main-body"> <script> var GLOBAL_INFO = [-COMMON_DATA-]; </script>这样的代码, 我的需求是想知道GLOBAL_INFO从哪里来的,所...原创 2021-03-03 11:33:09 · 75 阅读 · 0 评论 -
input密码框谷歌浏览器关闭记住密码功能
试了好几个方法,有效的已经标记出来了1.<input type="password" readonly οnfοcus="this.removeAttribute('readonly')" value="" autocomplete="off"/>2.<input type="password" id="password"autoComplete="new-password" />3.<input className="in_text" type="text...原创 2021-03-01 16:13:33 · 742 阅读 · 3 评论 -
js实现强密码校验
这两天实现了一个小功能,就是强密码校验,这里强密码,我们把它暂定为:长度大于等于8位,且包含大写字母、小写字母、特殊字符、阿拉伯数字四者中3种或以上。现在直入主题:1.校验方法:var getPwdStrength = function(pwd) { var level = 1; if (pwd.length >= 8) { level += 5; } var m = [ /[a-z]/, /[A-Z]/,原创 2021-02-22 15:05:30 · 1591 阅读 · 0 评论 -
react 根据获取的时间,实现时间按秒更新
>>>>上一篇笔记中,写的是根据当前时间实现按秒更新,但是发现与实际的要求不一样,要求是先获取到一个时间,然后在再这个时间的基础上实现按秒更新,emmm 那么我们今天就按照新的要求来实现它~一,对获取到的字符串格式的时间数据进行处理1.定义几个变量:var date = new Date();const TimeZoneArray = [-12, -11, -10, -9, -8, -7, -6, -5, -4.5, -4, -3.5, -3, -2, -1, 0,原创 2021-02-22 14:52:53 · 1640 阅读 · 0 评论 -
几种兼容ie8的前端框架
有时候公司里面的项目要求兼容ie8,之前做过jQuery和JavaScript的一些ie8不支持用法的整理,最近搜集了一些可以兼容ie8的前端框架,写篇博客记录下来~1.jQuery(这个就是我现在用的~)[email protected]+antd@1如果需要用redux,使用[email protected] / [email protected] (https://www.npmjs.com/package/anujs)4.司徒正美(avalon.js)5.3.X bootstrap (h..原创 2021-01-20 16:54:29 · 3338 阅读 · 1 评论 -
js实现带复选框的多选下拉框
最近被派去做一个不使用任何框架的纯js的项目,界面属于那种机器的界面,算是中规中矩的。新特性需要用原生的js或者jq写一个可多选的下拉框,实现的方式有很多。网上常见的有一下几种:1.下载multiple-select.js插件,由于公司使用网络的限制,下载插件不方便,而且这个最后的效果也不是我想要的,所以没有采用这种实现方法。2.网上还有常见的 div+ul&li 的实现,这种也比较方便,不过在处理值的时候,感觉不like~,最后也没有选择这种方法。3.使用div+定位:(根据上面方法2原创 2020-11-19 09:47:32 · 3935 阅读 · 2 评论