js
文章平均质量分 56
js相关
夏目友人帐...
这个作者很懒,什么都没留下…
展开
-
Lodop插件未安装 页面卡死 点击无反应
点击打印,LodopFuncs.js 会首先检查是否安装了Lodop插件,只要未安装Lodop,页面头部会进行提示,提示过后,页面的其他操作都无任何响应了。如图所示,注释掉LodopFuncs.js中下面这个语句。自己在页面里面检测是否安装,并做安装提示。pc项目使用到Lodop打印。原创 2022-09-27 10:47:41 · 1698 阅读 · 0 评论 -
前端鉴权必须了解的 5 个兄弟:cookie、session、token、jwt、单点登录
本文你将看到:基于 HTTP 的前端鉴权北京cookie 为什么是最方便的储存方案,有哪些操作 cookie 的方式session 方案是如何实现的,存在哪些问题token 方案是如何实现的,如何进行编码和防篡改?jwt 是做什么的?refresh token 的实现和意义session 和 token 有什么异同和优缺点单点登录是什么?实现思路何在浏览器下的处理从状态说起「HTTP 无状态」我们知道,HTTP 是无状态的。也就是说,HTTP 请求方和响应方间无法维护状态,都是一次性的,转载 2021-09-02 12:50:08 · 354 阅读 · 0 评论 -
浏览器调起相机拍照
在微信浏览器或其他移动端浏览器调起相机:// 可以调起相册、文件管理器、相机<input type="file" accept="image/*" value="上传" />// 直接调起相机<input type="file" accept="image/*" capture="camera" value="上传" />...原创 2021-08-31 09:22:34 · 779 阅读 · 0 评论 -
npm install 报错 check python checking for Python executable python2 in the PATH
当npm install 的时候,报如下错误:Building: G:\nodejs\node.exe F:\test\node_modules\node-gyp\bin\node-gyp.js rebuild --verbose --libsass_ext= --libsass_cflags= --libsass_ldflags= --libsass_library=gyp info it worked if it ends with okgyp verb cli [gyp verb cli原创 2021-08-28 14:57:28 · 12121 阅读 · 2 评论 -
我终于把 JS 中 let,const 和 var 的用法弄清楚了
在编程时,变量成为了用于存储数据的容器。例如,当你把自己的名字输入到网站上的表单字段中时,数据就会存储在变量中。而当你在网站上搜索特定项时,返回的信息在展示给你看之前首先也是存储在变量中。赋值运算符用于将数据赋值给变量。var name = "Kingsley";在JavaScript中,有三个定义变量的关键字。它们是let,const和var。2015年以前,使用var关键字是声明JavaScript变量的唯一方法。幸而,EmcaScript 2016(ES16)的到来带来了另外两个变量关键字转载 2021-06-30 16:57:14 · 1184 阅读 · 0 评论 -
JavaScript 真正的工作原理,你知道吗?
你是否只是听说过JavaScript,但是不了解它的基本原理?不知道后台究竟发生了什么?在面试中遇到麻烦了吗?不用担心,这篇文章将帮助大家了解JavaScript的一些基本概念。你可能会,也可能不会在日常活动中使用这些概念,但是如果你对JavaScript世界感到好奇并想深入了解,那么我相信你会发现这些内容真的很有趣。这篇文章将涵盖JS最基本的主题之一——执行上下文。好的,事不宜迟,让我们开始吧。你听说过执行上下文吗?执行上下文是JS中最基本的概念之一。可以这样说:JS中的所有东西都在执行上下.转载 2021-03-24 08:46:51 · 210 阅读 · 0 评论 -
函数柯里化
什么是函数柯里化柯里化,英语:Currying,柯里化就是把接受多个参数的函数变换成接受一个单一参数(最初函数的第一个参数)的函数,并且返回接受余下的参数而且返回结果的新函数的技术。。怎么使用function simpleURL(protocol, domain, path) { return `${protocol}${domain}${path}`;}var myurl = simpleURL('https://', 'www.csdn.net/', 'a.html');var my原创 2021-01-18 13:59:24 · 91 阅读 · 0 评论 -
为什么 fetch 要用两次 then 才能取出数据
该问题是由于看到fetch的then方法的使用,产生的疑问,在深入了解并记录对promise的个人理解。疑问地方:fetch为什么可以使用then?(个人理解then方法是定义在原型对象Promise.prototype上的)为什么使用两次then才能取出数据?(重点疑惑是这里,疑惑第二个then没有进行其他操作,只是将上一个then的返回值进行输出,就可以获取到arr.txt的数据)解释两次then用法:第一次then用法:then是根据promise的状态变化而执行的回调函数,p.原创 2021-01-13 21:09:44 · 6033 阅读 · 3 评论 -
new Set()的基础用法(ES6)
1、什么是Set()似于数组,但它的一大特性就是所有元素都是唯一的,没有重复。我们可以利用这一唯一特性进行数组的去重工作。2、常用方法2.1 添加元素 addlet list=new Set();list.add(1)2.2 删除元素 deletelet list=new Set([1,20,30,40])list.delete(30) //删除值为30的元素,这里的30并非下标2.3 判断某元素是否存在 haslet list=new Set([1,2,3,4])li转载 2021-01-12 22:32:24 · 8040 阅读 · 0 评论 -
前端存储之cookie、localStorage、sessionStorage、indexDB
cookieCookie 是小甜饼的意思。顾名思义,cookie 确实非常小,它的大小限制为4KB左右,是网景公司的前雇员 Lou Montulli 在1993年3月的发明。它的主要用途有保存登录信息,比如你登录某个网站市场可以看到“记住密码”,这通常就是通过在 Cookie 中存入一段辨别用户身份的数据来实现的。localStoragelocalStorage 是 HTML5 标准中新加入的技术,它并不是什么划时代的新东西。早在 IE 6 时代,就有一个叫 userData 的东西用于本地存储,而当转载 2020-12-30 13:07:25 · 770 阅读 · 0 评论 -
Object.defineProperty是Es5中无法shim的特性 shim是什么?
在JavaScript的世界里,有两个词经常被提到,shim和polyfill,它们指的都是什么呢?shim一个shim是一个库,它将一个新的API引入到一个旧的环境中,而且仅靠旧环境中已有的手段实现。比如:google和github上都有一段用于兼容ie等低版本浏览器的html标签库 html5shiv,ps: shim有时也叫shiv。Vue响应式原理中说道:Object.defineProperty是Es5中无法shim的特性,那么这里的shim是什么呢?文档的意思就是,Object.原创 2020-12-18 14:53:28 · 1740 阅读 · 0 评论 -
JS来判断网页是在什么端打开
利用正则表达式<script type="text/javascript"> function isPC() { var userAgent = navigator.userAgent.toLowerCase(); if (/ipad|iphone|midp|rv:1.2.3.4|ucweb|android|windows ce|windows mobile/.test(userAgent)) { //跳转移动端页面原创 2020-11-27 13:14:12 · 228 阅读 · 1 评论 -
Array.prototype.slice.call(arguments)
JavaScript中的Array.prototype.slice.call(arguments)能将有length属性的对象转换为数组(特别注意: 这个对象一定要有length属性).首先,我们来看看JavaScript中的slice用法, 在JavaScript中Array是一个类,slice是此类中的一个方法,slice的中文意思是 ‘截取’。slice() 方法返回一个新的数组对象,这一对象是一个由 begin 和 end 决定的原数组的浅拷贝(包括 begin,不包括end)。原始数组不会.原创 2020-11-25 22:22:48 · 254 阅读 · 1 评论 -
什么是构造函数?构造函数有什么用?
什么是构造函数?在JavaScript中,用new关键字来调用定义的构造函数。默认返回的是一个新对象,这个新对象具有构造函数定义的变量和函数/方法。举个例子:function Student(name,age){ this.name = name; this.age = age; this.act = function () { console.log("我是:" + this.name + ",年龄:" + this.age); };}var student = new原创 2020-11-05 21:10:17 · 5350 阅读 · 0 评论 -
【JS】深入理解事件循环,这一篇就够了!(必看)
最近在看关于js的事件循环机制,(很多公司必问的面试题)看了几篇文章后准备总结出来分享给大家众所周知,JavaScript 是一门单线程语言,虽然在 html5 中提出了 Web-Worker ,但这并未改变 JavaScript 是单线程这一核心,,可是浏览器又能很好的处理异步请求,那么到底是为什么呢?浏览器执行线程在解释事件循环之前首先先解释一下浏览器的执行线程:浏览器是多进程的,浏览器每一个 tab 标签都代表一个独立的进程,其中浏览器渲染进程(浏览器内核)属于浏览器多进程中的一种,主要转载 2020-11-04 15:13:59 · 302 阅读 · 0 评论 -
面试常见整理:JS字符串常用处理方法
字符方法charAt():以单字符字符串的形式返回给定位置的字符var str = "hello world";str.charAt(1);//"e"字符串的截取方法slice():返回给定范围位置的字符var str = "hello world";console.info(str.slice(6));//"orld"=>从第6个字符开始截取至最后console....原创 2020-04-24 14:16:25 · 248 阅读 · 5 评论 -
面试常见整理:什么是闭包?闭包的作用?
什么是闭包?闭包是指有权访问另外一个函数作用域中的变量的函数.可以理解为(能够读取其他函数内部变量的函数)。闭包的作用正常函数执行完毕后,里面声明的变量被垃圾回收处理掉,但是闭包可以让作用域里的 变量,在函数执行完之后依旧保持没有被垃圾回收处理掉。实例常见闭包//计数器function addCount() { var conut = 0; return functi...原创 2020-04-21 13:46:33 · 882 阅读 · 0 评论 -
钩子函数和回调函数的区别
钩子函数钩子(Hook)概念源于Windows的消息处理机制,通过设置钩子,应用程序对所有消息事件进行拦截,然后执行钩子函数。钩子实际上是一个处理消息的程序段,通过系统调用,把它挂入系统。每当特定的消息发出,在没有到达目的窗口前,钩子程序就先捕获该消息,亦即钩子函数先得到控制权。这时钩子函数即可以加工处理该消息,也可以不作处理而继续传递该消息,还可以强制结束消息的传递。回调函数回调函...原创 2020-04-20 09:12:34 · 1368 阅读 · 0 评论 -
Array.apply(null, {length: 3})和Array(3)的区别
写了如下代码:Array(3).map(function () { return "cat" })发现浏览器打印出来是这样的:(3) [empty × 3]在网上冲浪一番,看到别人这么写:Array.apply(null, { length: 3 }).map(function () { return "cat" })在浏览器里打印出来了:(3) [...原创 2020-04-17 10:05:08 · 500 阅读 · 0 评论 -
JS中dom0级事件和dom2级事件的区别介绍
1.DOM0级事件一般形式dom标签属性上的onclick <div onclick=‘xxx’ ></div>在script中为dom指定 divDom.onclick<a href="#" id="hash" onclick="fn();fn1();"><button type="button">返回上面进行开通</button></a> var btn=$('#hash').get();btn.onclick=转载 2020-10-26 16:49:34 · 1005 阅读 · 0 评论