js

jquery 封装自定义组件实例

耗尽温柔 提交于 2020-02-23 04:22:08
下面的代码是封装了一个 table组件。 该组件 支持表格 自定义列、列的显示与隐藏、列对齐方式、点击事件。 效果截图: 代码如下: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>自定义组件</title> <!-- <link rel="stylesheet" type="text/css" href="js/index.css"> --> <script type="text/javascript" src="./js/jquery-3.3.1.js"></script> <script type="text/javascript" src="./js/component.js"></script> </head> <body > <div class="mytable"></div> </body> <script> $(function(){ var table = $(".mytable").mytable({ align:'center', column:[ {name:'lsh',label:'流水号',width:80,visible:false}, {name:'xm',label:'姓名',width:180,visible:true}, {name:'yw',label:'语文'

JS闭包原理分析

我怕爱的太早我们不能终老 提交于 2020-02-23 03:29:34
JS闭包原理分析 闭包是指有权访问另一个函数作用域中的变量的函数。在一个函数A内部返回另一个函数B,并且函数B里面使用者A函数内部的私有变量,此外在函数A外面定义一个变量接收函数B,这样就形成了闭包。 比如在一栋房子里面有很多个小房间,你手上通过拿着一个小房间的地址(xxx栋001房),那么通过小房间的地址就可以找到这栋房子,进入里面。 函数都有自己的执行环境,该环境定义了变量或者函数访问数据的权限。JS 在运行的时候,会为每一个执行函数分配内存空间,我们称这个空间为作用域对象(Scope Object)。当调用函数时,函数中分配的本地变量会被存储在这个作用域对象中。当函数执行了之后,该空间会被销毁,该空间内的变量也会被销毁。 函数作用域对象是按顺序访问的,最先能够访问的是当前函数的作用域,如果访问的变量在当前作用域没有,会访问上一层作用域,直到找到全局作用域(Global)对象。如果访问到全局作用域也没有这个对象,会抛出ReferenceError的异常。这就是所谓的作用域链(scope chian)。 闭包之所以能够访问到上一层函数中的局部变量,是因为当变量被捕获之后,即使上一层函数调用完毕出栈了,但是它的作用域对象没有被销毁,所以仍然能够被闭包访问。 在函数内部返回一个函数,并且在外部定义一个全局变量接收这个返回的函数,该变量存储的实际上是返回的函数的存储地址

js正则表达式

醉酒当歌 提交于 2020-02-23 01:51:30
正则表达式 正则表达式,又称规则表达式。 正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。 正则表达式通常用来检索、替换那些符合某个规则的文本。 正则表达式的作用: 1.灵活性、逻辑性和功能性非常的强 2.可以迅速地用极简单的方式达到字符串的复杂控制 3.对于刚接触的人来说,比较晦涩难懂 一:常见正则表达式 元字符 \d : 匹配任意一个数字,0~9 中的任意一个。 \s : 匹配任意一个空白字符。 \b : 匹配一个单词边界,不匹配任何字符。 \w : 匹配任意一个字符( 字母、 数字、下划线 )。 . : 匹配任意一个字符,除了换行符( \n )。 \n : 查找换行符。 \u : 通常用来匹配汉字。 表达式 “\d”,"\s","\b","\w",对应的大写字母表示相反的意义。 如:\D 匹配所有的非数字字符(反选)。 方括号 [abc] : 查找方括号之间的任何一个字符。 [^abc] : 查找任何不在方括号之间的字符(反选)。 [0-9] : 查找任何从 0 至 9 的数字。 [a-z] : 查找任何从小写 a 到小写 z 的字符。 [A-Z] : 查找任何从大写 A 到大写 Z的字符。 量词 n+ : 匹配任何包含至少一个 n 的字符串。{1,} n?

js正则

。_饼干妹妹 提交于 2020-02-22 22:40:23
关于正则,我相信很多小伙伴跟我一样,在接触的时候信心满满,等学完之后会有点醉,(其实还是练得不够多)那么接下来随小编一起来复习一下这个傲娇的正则。 正则:也叫做规则,让计算机能够读懂人类的规则。 有什么规则呢? 下面小编带大家重新认识认识正则: 正则啊,就像一台验钞机,在你不知道用户提交的钞票真假的时候,总能帮你一眼识别 ! 1、什么是正则,有什么用呢? 正则:也叫做规则,让计算机能够读懂人类的规则; 前端哪些地方用到正则? 常用的有表单验证,或者敏感词过滤; 2、他有什么规则呢? 正则也是一个系统对象,跟数组、json一样,也有个写法规则 简写 var re=//; //只写两斜杠,浏览器会认为是注释,所以尽量不要给他为空,注意两斜杠之间不要有引号 全称 var re=new RegExp(); //Reg是正则的简写,Exp是表达式的简写。 注:大部分情况用简写,只有一种情况用全称写法:正则需要传参的时候;全称写法用到\时,需要两个\,否则是转义字符。 接下来正式介绍一下正则 一、新建正则的两种方法: 方式一:直接量语法 1、通过new创建正则:var box = new RegExp("hello", "ig"); 2、省略new创建正则:var box = RegExp("hello", "ig"); 3、正则常量赋值: var box = /hello/ig; 方式二

java项目,前端集成markdown

浪尽此生 提交于 2020-02-22 18:01:31
参考文档地址: https://pandao.github.io/editor.md/ ,该网站的GitHub中也有参考资料。 此集成markdown的图片上传功能是伪上传。 第一步,引入markdown的css,js,font等文件 <link rel="stylesheet" href="/css/editormd.preview.min.css"> <link rel="stylesheet" href="/css/editormd.min.css"> <script type="text/javascript" src="/js/jquery-3.4.0.js"></script> <script type="text/javascript" src="/js/editormd.min.js"></script> <script type="text/javascript" src="/js/lib/marked.min.js"></script> <script type="text/javascript" src="/js/lib/prettify.min.js"></script> 第二步,需要引入markdown的 HTML 处加入如下代码 注意div的 id=“qiestion-editor” 要和下面js中的 “qiestion-editor” 一致。

JS 数组 学习笔记

不问归期 提交于 2020-02-22 17:59:22
什么是数组 数组(array)是按次序排列的一组值。每个值的位置都有编号(从0开始),整个数组用方括号表示。本质上数组属于一种特殊的,由 Array 构造出来的对象, typeof 运算符返回数组的类型是 object ,任何类型的数据都可以放入数组。 var arr = ['a', 'b', 'c'] typeof arr // 'object' var arr2 = [ {a: 1}, [1, 2, 3], function(){ return true; } ] arr2[0] // {a: 1} 数组的赋值和读取 var arr = [] // 赋值 arr[0] = 'a' arr[1] = 'b' arr[2] = 'c' // 读取数组中编号是 2 的值 arr[2] // c 多维数组 var a = [[1, 2], [3, 4]] a[0][0] // 1 a[1][1] // 4 数组的键名 由于数组成员的键名是固定的(默认总是0、1、2...),因此数组不用为每个元素指定键名,而对象的每个成员都必须指定键名。JavaScript 语言规定,对象的键名一律为字符串,所以, 数组的键名其实也是字符串 。之所以可以用数值读取,是因为非字符串的键名会被转为字符串。 var arr = ['a', 'b', 'c'] arr['0'] // 'a' arr[0] //

node js入门必看

限于喜欢 提交于 2020-02-22 15:58:10
nodejs 1.服务器端运行的 js的一个运行环境 apache tomcat IIS nginx 开放源 BSD github 特点: 事件驱动 event 非阻塞 和异步I/O模型 input输入 output 输出 Node大部分基本模块都用JavaScript编写,底层模块 c++ c++稳定性 性能非常好 官方网址: https://nodejs.org/zh-cn/ win+r =>cmd node -v npm -v C:\Users\sam>node ‘node’ 不是内部或外部命令,也不是可运行的程序或批处理文件。 1.node卸载了 npm package manager npm包管理工具 add to path 自动将program file/nodejs/ 计算机->属性->高级系统设置->高级->环境变量 系统变量:path 加入的是node.exe的路径 C:\Program Files (x86)\Common Files\Oracle\Java\javapath; %SystemRoot%\system32; %SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0; C:\Program Files\Microsoft VS Code

js冒泡排序

淺唱寂寞╮ 提交于 2020-02-22 15:06:44
**var arr = [5,8,4,9]; for(var i =0;i<arr.length-1;i++){ for(var j = 0;j<arr.length-i-1;j++){ if(arr[j]>arr[j+1]){ var temp = arr[j]; arr[j] = arr[j+1]; arr[j+1] = temp; } } } //冒泡排序相当于做升序** 来源: CSDN 作者: qq_45457134 链接: https://blog.csdn.net/qq_45457134/article/details/104442006

require.js的用法

夙愿已清 提交于 2020-02-22 13:00:23
require.js 是一个非常流行的库。 一、为什么要用require.js? 最早的时候,所有Javascript代码都写在一个文件里面,只要加载这一个文件就够了。后来,代码越来越多,一个文件不够了,必须分成多个文件,依次加载。下面的网页代码,相信很多人都见过。 <script src="1.js"></script> <script src="2.js"></script> <script src="3.js"></script> <script src="4.js"></script> <script src="5.js"></script> <script src="6.js"></script> 这段代码依次加载多个js文件。 这样的写法有很大的缺点。首先,加载的时候,浏览器会停止网页渲染,加载文件越多,网页失去响应的时间就会越长;其次,由于js文件之间存在依赖关系,因此必须严格保证加载顺序(比如上例的1.js要在2.js的前面),依赖性最大的模块一定要放到最后加载,当依赖关系很复杂的时候,代码的编写和维护都会变得困难。 require.js的诞生,就是为了解决这两个问题:      (1)实现js文件的异步加载,避免网页失去响应;   (2)管理模块之间的依赖性,便于代码的编写和维护。 二、require.js的加载 使用require.js的第一步,是先去官方网站