什么是闭包,闭包的优缺点,闭包的使用场景-爱代码爱编程
转载链接:https://www.jianshu.com/p/d903be89f211 概念 闭包是指有权访问另外一个函数作用域中的变量的函数 闭包的优点 可以重复使用变量,并且不会造成变量污染 全局变量可以重复使用,但是容易造成变量污染。局部变量仅在局部作用域内有效,不可以重复使用,不会造成变量污染。闭包结合了全局变量和
代码编织梦想
转载链接:https://www.jianshu.com/p/d903be89f211 概念 闭包是指有权访问另外一个函数作用域中的变量的函数 闭包的优点 可以重复使用变量,并且不会造成变量污染 全局变量可以重复使用,但是容易造成变量污染。局部变量仅在局部作用域内有效,不可以重复使用,不会造成变量污染。闭包结合了全局变量和
一、html代码 <select id="sle"> <option value="100" emoney="12" >选项1</option> <option value="200" emoney="13" >选项2</option> <option value="300" emoney
Promise解决的问题 相信每个前端都遇到过这样一个问题,当一个异步任务的执行需要依赖另一个异步任务的结果时,我们一般会将两个异步任务嵌套起来,这种情况发生一两次还可以忍,但是发生很多次之后,就形成了所谓的回调地狱,代码层层嵌套,环环相扣,很明显,逻辑稍微复杂一些,这样的程序就会变得难以维护。就比如我们昨天的那个回调地狱的例子: function f
用原生ajax异步验证注册时用户名是否存在 下面是ajax.html文件代码 用post请求,当输入框失去焦点时进行异步验证 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="view
vue配合element-ui设置查看表单的JSON数据 由于是演示,所以全局引用了element-ui。核心是格式化JSON的函数getJsonData。配合一些样式设置,标记出对应的数据类型。 // 处理json数据,采用正则过滤出不同类型参数 getJsonData (json) { if (typeof json !== 'str
Cookie和Session的特点 Cookie(不是jsp的内置对象):以键值对的形式存储,即name=value 包:javax.servlet.http.Cookie 构造方法: 常用方法: 获取当前Cookie对象的name值:String getName() 获取当前Cookie对象的value值:String getValue() 设置当
Video src Blob加密路径 一种是Java 生成 Blob 二进制流 咱不会 另一种是前端 window.URL 生成的Blob的方式 ----html----- <video id="my-video" class="video-js" playsinline controls preload="auto" controlsli
let arr1 = [ {fpcid: "2da37fdfe66140089dc3367b21cc6194", fpcNameCode: "34"}, {fpcid: "2da37fdfe66140089dc3367b21cc6195", fpcNameCode: "33"}, {fpcid: "2da37fdfe66140089dc3367b21
在js面试中数组求和是很常见的面试题,接下来的文章分为两个部分,第一部分写常见的数组求和方法,第二部分写reduce的用法以及重写reduce。 常见的数组求和方法 1.循环数组里面每一项,然后累加求和 var arr = [11, 12, 13, 14, 15] let sum = 0 for (let i = 0; i < arr.leng
前言 js写的网页飘窗,让元素一直在屏幕来回飘动,鼠标经过的时候停止运动.思路 通过fixed定位设置元素位置,然后通过 (元素宽高) 与 (left/top值) 与 (移动像素) 这三个的和相加得到的结果和屏幕宽高相比较,这样来判断移动方向.最后用onmouseover和onmouseout来实现鼠标经过的时候停止动画,鼠标离开继续动画 先上代码
总览 WebStorm创建工程后目录结构如图所示: 1、package.json 每个项目的根目录下面,一般都有一个package.json文件,定义了这个项目所需要的各种模块,以及项目的配置信息(比如名称、版本、许可证等元数据)。npm install命令根据这个配置文件,自动下载所需的模块,也就是配置项目所需的运行和开发环境。 负责 管理 整个
1. Ajax编程 含义:ajax是 Asynchronous Javascript And XML的缩写 ,它不是一门新的语言,而是对现有持术的综合利用。 本质:是在http协议的基础上以异步的方式通过XMLHttpRequest对象与服务器进行通信。 作用:可以在页面不刷新的情况下,请求服务器,使页面局部刷新 2.Ajax的优缺点 优 : 通过
1. js作用域(就是代码名字在某个范围内起作用和效果,提高程序的可靠性,减少命名冲突) (1)全局作用域 (2)局部作用域(函数内部) a.全局变量(全局作用域下的变量) b.局部变量(局部作用域下的变量) !!!注意:如果在函数内部,没有声明直接赋值的变量也属于全局变量。函数的形参也可以看做局部变量。 2. 预解析(js引擎会把js里面的所有va
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <
JS对象 JavaScript对象 概念 在JS中,对象本质是对一组无序的相关变量(属性)以及函数(方法)进行组合的结果,将这些变量及方法进行统一再封装对封装结果命名为对象JavaScript中所有的事物都是对象:字符串,数字,数组,日期,等等. 可以说万事万物皆对象,在程序中可以将生活中的所有事物映射成一个对象,已达到程序实现现实生活中的事务。在
问题再现 今天在写小程序时发现一个问题:由于C#特性,数据类型没有Date类型,所以取出来的数据想要显示成Date还必须自己再处理。由于后端用的linq查询,不支持在查询语句里使用函数,于是我的解决方案是数据拿到前端用js的substr()函数进行处理,处理前的前端效果如图1所示。 图1. 处理前的数据显示 要想动态修改数据就必须使用setData
求出数组最大值的几种方法 1、排序法 使用数组的sort()方法对数组进行排序,得到一个从小到大的有序数组,数组的第一个和最后一个元素就是我们要找的最小值和最大值: var arr = [3, 5, 1, 4, 2] arr.sort(function(a, b) { return a - b; }) console.log(arr);
原生JS阶段知识点总结 历经了2个月每天接近12小时的JS学习,至此已经讲完了JS的数据类型,判断语句,循环语句,进制,函数,数组,字符串,math对象,定时器,dom,bom,事件,键盘,轮播图,滑块验证,鼠标事件,弹幕,放大镜,ES6新增,购物车,JSON数据,正则,运动函数,php简介,ajax的核心,请求,ajax的封装,cookie,promi
我们总是在登录微信,QQ或者其他一些网页的时候,都会出现一个验证码框,他们有的是数字的,有的是文字的,有的是混合的,各种各样的。 很好奇是怎么实现的。带着这样的疑问。 目录 1.随机数字字母组合的验证码 2.算数表达式验证码 3.使用框架进行实现验证码 4.案例学习: 1.随机数字字母组合的验证码 首先创建一个javaWeb的工程
01、排他思想 <script> // 1. 获取所有按钮元素 var btns = document.getElementsByTagName('button'); // btns得到的是伪数组 里面的每一个元素 btns[i] for (var i = 0; i