![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Js
seasideX
哦!
展开
-
[Javascript] 实现setInterval函数
问题经常使用Javascript的同学一定对setInterval非常熟悉,当使用setInterval(callback, timer)时,每经过timer毫秒时间,系统都将调用一次callback。请问全局如果没有提供setInterval函数,该如何自己实现这一功能?方案一:循环或递归(错误解法)最简单的思路便是通过简单的循环或者递归,每次检查时间戳是否已经超过上次触发给定函数的时间加上间隔时间,如果已经超过便再次触发函数,并重置计时器至当前时间。const setInte.转载 2020-10-15 16:57:54 · 1289 阅读 · 0 评论 -
JavaScript 进阶(一)JS的“多线程“(转)
这个系列的文章名为“JavaScript 进阶”,内容涉及JS中容易忽略但是很有用的,偏JS底层的,以及复杂项目中的JS的实践。主要来源于我几年的开发过程中遇到的问题。小弟第一次写博客,写的不好的地方请诸位斧正,觉得还有一些阅读价值的请帮忙分享下。这个“JavaScript 进阶”是一个系列文章,请大家鼓励鼓励,我尽快更新。另外,如果你有比较好的话题,也可以在下面评论,我们一起研究提高。JS是多线程的吗?多线程编程相信大家都很熟悉,比如在界面开发中,如果一个事件的响应需要较长时间,那么一般做法就是把转载 2020-10-15 16:23:59 · 380 阅读 · 2 评论 -
零距离接触websocket(转)
零距离接触websocket????什么是WebSocket定义Websocket是一个持久化的网络通信协议,可以在单个 TCP 连接上进行全双工通讯,没有了Request和Response的概念,两者地位完全平等,连接一旦建立,客户端和服务端之间实时可以进行双向数据传输关联和区别 HTTP HTTP是非持久的协议,客户端想知道服务端的处理进度只能通过不停地使用Ajax进行轮询或者采用long poll的方式来,但是前者对服务器压力大,后者则会因为一直等待Response造成阻转载 2020-10-07 10:40:16 · 131 阅读 · 0 评论 -
JSON.stringify
作为一名 JavaScript 开发人员,JSON.stringify()是用于调试的最常见函数。但是它的作用是什么呢,难道我们不能使用console.log()来做同样的事情吗?让我们试一试。//初始化一个user对象constuser={"name":"PrateekSingh","age":26}console.log(user);//结果//[objectObject]哦!console.log()没有帮助我们打印出期望的结果。它输...转载 2020-07-06 14:08:56 · 254 阅读 · 0 评论 -
js浅拷贝与深拷贝的区别和实现方式(转)
如何区分深拷贝与浅拷贝,简单点来说,就是假设B复制了A,当修改A时,看B是否会发生变化,如果B也跟着变了,说明这是浅拷贝,拿人手短,如果B没变,那就是深拷贝,自食其力。1. 如果是基本数据类型,名字和值都会储存在栈内存中var a = 1;b = a; // 栈内存会开辟一个新的内存空间,此时b和a都是相互独立的b = 2;console.log(a); // 1当然,这也算不上深拷贝,因为深拷贝本身只针对较为复杂的object类型数据。2. 如果是引用数据类型,名字存在栈内.转载 2020-06-09 15:41:30 · 143 阅读 · 0 评论 -
js 深拷贝和浅拷贝区别,以及实现深拷贝的方法(转)
深拷贝和浅拷贝最根本的区别在于是否是真正获取了一个对象的复制实体,而不是引用,深拷贝在计算机中开辟了一块内存地址用于存放复制的对象,而浅拷贝仅仅是指向被拷贝的内存地址,如果原地址中对象被改变了,那么浅拷贝出来的对象也会相应改变。1.深拷贝1.1. 最简单的方法就是JSON.parse(JSON.stringify())function deepCopy(o) { return JSON.parse(JSON.stringify(o))}var c = { age: .转载 2020-06-09 15:39:28 · 392 阅读 · 0 评论 -
Vue中如何使用定时器
Vue中如何使用定时器 created() { // 如果不加 window ,则会使用 vue实例的方法,将无法清除定时器 this.timer = window.setInterval(() => { // 要执行的函数 this.init() }, 5000) }, beforeDestroy() { w...原创 2020-04-28 14:12:52 · 4400 阅读 · 0 评论 -
55个提高你CSS开发效率的必备片段
55个提高你CSS开发效率的必备片段来自:Join GitHub today链接:https://github.com/Wscats/CV/issues/29这篇文章会记录我们平时常用到的 CSS 片段,使用这些 CSS 可以帮助我们解决许多实际项目中遇到的问题,强烈建议点赞收藏再看,方便日后查找。清除浮动浮动给我们的代码带来的麻烦,想必不需要多说,我们会用很多方式来...转载 2020-04-17 13:30:46 · 110 阅读 · 0 评论 -
(转)vue 点击按钮复制指定内容到剪切板,复制变量值到剪切板
1.安装插件npm install --save vue-clipboard2或者cnpm install --save vue-clipboard2或者yarn add vue-clipboard22.main.js引入,或者在使用的组件页面引入,这里在main.js引入import Vue from 'vue' import VueClipboard fr...转载 2020-04-08 16:44:28 · 552 阅读 · 0 评论 -
浏览器缓存控制三种方式(Expires、Last-Modified、Etag)
当请求一个页面时,如果浏览器使用本地缓存,因此我们经常会看到一个HTTP请求为304状态。或者显示200状态,在chrome下标注是from cache,在火狐下会标注BFCache;我们希望在服务器端更新了静态文件(如css、js、图片),能够在客户端得到及时的更新,但又不想让浏览器每次请求都从服务器端获取静态资源。那么就需要了解一些下面的知识:Last-Modified / If-Mo...转载 2019-12-13 15:58:12 · 869 阅读 · 0 评论 -
(转)用漫画理解使用JSON Web Token设计单点登录系统
上次在《JSON Web Token - 在Web应用间安全地传递信息》中我提到了JSON Web Token可以用来设计单点登录系统。我尝试用八幅漫画先让大家理解如何设计正常的用户认证系统,然后再延伸到单点登录系统。如果还没有阅读《JSON Web Token - 在Web应用间安全地传递信息》,我强烈建议你花十分钟阅读它,理解JWT的生成过程和原理。用户认证八步走所谓用户认证(...转载 2019-06-26 11:20:24 · 129 阅读 · 0 评论 -
EXTJS 6 Grid 滚动到底部 触发事件(如:加载数据)
给grid增加个listeners 监听viewready listeners : { afterrender : function() { }, viewready: function () { grid.getView().getEl().on('scroll', function () { ...原创 2019-05-16 16:02:06 · 868 阅读 · 0 评论 -
ext的ajax
笔记,记录一下ext的ajax下面是一个登陆页面调用的EXTJSlogin function,通过 url: '/UI/HttpHandlerData/Login/Login.ashx',获取返回登陆账户和密码!Ext.onReady(function () { login = function (target) { if (eval(document.get...原创 2019-05-08 22:08:11 · 202 阅读 · 0 评论 -
从含有数字的字符串中提取数字
var v ="测试数据101test250";我想要里面的 101250var strHtml = '测试数据101test250'var num=""; for(var i=0;i<strHtml.length;i++){ if("0123456789".indexOf(strHtml.substr(i,1))>-1) ...原创 2019-04-18 15:25:31 · 1259 阅读 · 0 评论