
JS知识点整理
文章平均质量分 67
chentian888
人生为棋,我愿为卒行动虽慢可谁曾见我退后一步
展开
-
Array的一些排序算法
偶尔需要我们比较两个数组,在一个数组中删除另一个数组存在的值。我们常常用的方法是循环比较判断并删除。最近看到另一个好方法巧妙删除的例子:var arr1 = ["i", "b", "c", "d", "e", "f","x"]; //数组A var arr2 = ["a", "b", "c", "d", "e", "f", "g"];//数组B var temp = []; //临时数组1原创 2016-12-25 15:18:25 · 556 阅读 · 0 评论 -
seajs模块化jQuery与jQuery插件
seajs模块化jQuery与jQuery插件模块化jQuery1、把jQuery修改成SeaJs的模块代码非常简单,就是用下面这段语句将jQuery源代码包裹起来:define('jquery',[],function(require, exports, module){ //这里放jQuery源代码 module.exports = jQuery;});2、也可以加一个判断,如原创 2017-03-01 22:05:08 · 308 阅读 · 0 评论 -
Javascript操作DOM常用API总结
Javascript操作DOM常用API总结原文地址:http://luopq.com/2015/11/30/javascript-dom/类型Node类型(ELEMENT_NODE:1 ATTRIBUTE_NODE:2 TEXT_NODE:3 COMMENT_NODE:8``DOCUMENT_NODE:9 DOCUMENT_FRAGMENT_NODE:11)节点创建型(createElemen原创 2017-04-18 11:04:43 · 379 阅读 · 0 评论 -
Javascript操作DOM常用API总结
Javascript操作DOM常用API总结原文地址:http://luopq.com/2015/11/30/javascript-dom/类型Node类型(ELEMENT_NODE:1 ATTRIBUTE_NODE:2 TEXT_NODE:3 COMMENT_NODE:8``DOCUMENT_NODE:9 DOCUMENT_FRAGMENT_NODE:11)节点创建型(createElemen原创 2017-04-18 11:08:38 · 2513 阅读 · 2 评论 -
JS操作iframe里的dom
JS操作iframe里的dom一、父级窗口操作iframe里的domJS操作iframe里的dom可是使用contentWindow属性,contentWindow属性是指指定的frame或者iframe所在的window对象,在IE中iframe或者frame的contentWindow属性可以省略,但在Firefox中如果要对iframe对象进行编辑则,必须指定contentWindow属性,c原创 2017-04-25 15:49:29 · 3339 阅读 · 0 评论 -
scrollWidth clientWidth offsetWidth style.width screen.width
关于scrollWidth() clientWidth() offsetWidth() style.width() screen.height()谷歌和火狐默认滚动条的宽度是 17px(Firefox Chrome IE 表现一致)一、计算宽高方法有: ①offsetWidth、offsetHeight ②clientWidth、clientHeight ③style.width、style.原创 2017-05-17 00:31:47 · 740 阅读 · 0 评论 -
关于json的几个方法
js中将字符串转换成json的三种方式1、eval方式解析function strToJson(str){ var json = eval('(' + str + ')'); return json; } 记得别忘了str两旁的小括号2、new Function形式function strToJson(str){ var json = (new Function("r原创 2017-07-12 21:47:20 · 731 阅读 · 0 评论 -
Git
GitGit安装进入官网下载安装界面Git,选择符合自己系统的安装包 which -a git git -version ls -ah 显示.git目录 初始化一个Git仓库,使用git init命令。 添加文件到Git仓库,分两步: 第一步,使用命令git add file.name,注意,可反复多次使用,添加多个文件。 第二步,使用命令git commit -m ‘注释’,完成。设原创 2017-07-16 09:32:22 · 484 阅读 · 0 评论 -
Array数组之reduce:reduceRight
Array数组之reduce/reduceRightreducereduce()方法对累加器和数组中的每个元素(从左到右)应用一个函数,将其减少为单个值。语法arr.reduce(callback[, initialValue])callback 执行数组中每个值的函数,包含四个参数:accumulator-累加器累加回调的返回值; 它是上一次调用回调时返回...原创 2018-05-24 14:35:16 · 617 阅读 · 0 评论 -
在一个数组中删除另一个数组存在的值
偶尔需要我们比较两个数组,在一个数组中删除另一个数组存在的值。我们常常用的方法是循环比较判断并删除。最近看到另一个好方法巧妙删除的例子:var arr1 = ["i", "b", "c", "d", "e", "f","x"]; //数组A var arr2 = ["a", "b", "c", "d", "e", "f", "g"];//数组B var temp = []; //临时数组1原创 2016-12-25 14:55:51 · 6976 阅读 · 0 评论 -
Jsonp
什么是JSON?JSON的优点: 1. 基于纯文本,跨平台传递极其简单; 2. Javascript原生支持,后台语言几乎全部支持; 3. 轻量级数据格式,占用字符数量极少,特别适合互联网传递; 4. 可读性较强,虽然比不上XML那么一目了然,但在合理的依次缩进之后还是很容易识别的; 5. 容易编写和解析,当然前提是你要知道数据结构; JSON的缺点当然也有,但在作者看来实在是无关紧要的转载 2016-12-14 11:57:38 · 392 阅读 · 0 评论 -
String、Array常用方法整理
Array,String,Boolean,Number,RegExp都有共同的方法:toString(),value(),toLocaleString(). 一,Array 1,栈方法:push()添加数据到数组末尾,pop()从数组末尾移除最后一个元素. 2,队列方法:shift()从数组的前段移除一个元素,unshift()从数组的前端添加一个元素 3,重新排列:reverse()原创 2015-11-26 23:28:43 · 1891 阅读 · 0 评论 -
数组冒泡排序原理
此篇以该数组为例 var array = [8,7,9,2,3,5,6,1];数组冒泡循环原理:相邻的两位数做比较,1和2比较 2和3比较 3和4比较 4和5比较,这样依次比较,如果前面的数小于后面的数,不做操作,如果前面的数大于后面的数则调换两个数字的位置,,列1>2 则数字顺序为2 1(注:此时的1 2 3 4 5代表索引而不是数组),所以一层循环能挑出一个当前数组参与比较数字中的最大的数字,并原创 2016-04-28 13:07:18 · 7137 阅读 · 0 评论 -
scrollWidth() clientWidth() offsetWidth() style.width() screen.height()
关于scrollWidth() clientWidth() offsetWidth() style.width() screen.height(),这几个js方法的区别和用处在我一直都处于很晕的状态,今天决定把它给彻底的弄清楚。网上有很多文档介绍这几个方法,但是我觉得太杂了,没有条理,而且篇幅过长,即使看懂了过后也容易忘记。今天在这里自己总结了一下,然后用一个尽可能简短,清晰的条理给写出来。一、计算原创 2016-05-05 20:59:36 · 578 阅读 · 0 评论 -
Function类型
Function类型知识点索引函数没有重载函数声明与函数表达式作为值的函数函数内部属性 1、arguments 2、arguments.callee 3、apply()、call() 4、this函数属性和方法 1、length 2、prototype使用不带园括号的函数名是访问函数指针,而非调用函数 函数表达式 var sum=function(num1,num2原创 2016-08-28 22:11:55 · 599 阅读 · 0 评论 -
Canvas save、restore方法
Canvas save(),restore()方法save()和restore()方法是绘制复杂图形必不可少的方法.它们分别是用来保存和恢复 canvas 状态的,都没有参数。每一次调用 save 方法,当前的状态就会被推入堆中保存起来。这种状态包括: 当前应用的变形(即移动,旋转和缩放)strokeStyle, fillStyle, globalAlpha, lineWidth, lineC原创 2016-10-08 21:08:21 · 688 阅读 · 0 评论 -
Range对象
一、Range对象属性 属性值 说明 Range.collapsed 用于判断Range对象所代表的区域的开始点与结束点是否处于相同的位置,如果相同该属性值返回true Range.commonAncestorContainer 用于返回Range对象所代表的区域位于什么节点之中,该属性值为包含了该区域的最低层节点(一个节点可能是一个元素,也可能是一段完整文字)的节点 Ra原创 2016-09-29 09:43:37 · 2264 阅读 · 0 评论 -
Selection对象
Selection对象Selection对象一般由window.getSelection()或其他方法产生。它代表页面中的文本选区,可能横跨多个元素。文本选区由用户拖拽鼠标经过文字而产生。如果你想了解关于其他容纳纯文本的表单元素中的选区操作 Selection对象所对应的是用户所选择的 ranges (区域),俗称拖蓝。默认情况下,该函数只针对一个区域,我们可以这样使用这个函数 var selO原创 2016-09-29 09:53:24 · 1405 阅读 · 0 评论 -
Range、Selection、TextRange对象的区别与关系
Range、Selection、TextRange对象的区别与关系什么是Range所谓Range,是指HTML文档中任意一段内容。一个Range的起始点和结束点位置任意,甚至起始点和结束点可以是一样的(也就是空Range)。最常见的Range是用户文本选择范围(user text selection)。当用户选择了页面上的某一段文字后,你就可以把这个选择转为Range。当然,你也可以直接用程序定义R原创 2016-09-29 17:34:35 · 2942 阅读 · 0 评论 -
面向对象与原型原稿
一.创建对象创建一个对象,然后给这个对象新建属性和方法。var box = new Object(); //创建一个Object对象box.name = 'Lee'; //创建一个name属性并赋值box.age = 100; //创建一个age属性并赋值box.run原创 2016-11-06 18:40:37 · 310 阅读 · 0 评论 -
js浏览器检测的一些方法
简单检测办法ie678 = !+"\v1" ;ie678 = !-[1,];//IE9预览版中失效ie678 ='\v'=='v' ;ie678 = ('a~b'.split(/(~)/))[1] == "b"ie678 = 0.9.toFixed(0) == "0"IE8 = window.toStaticHTMLIE9 = window.msPerformance IE6-10 =原创 2016-12-08 11:14:00 · 1186 阅读 · 0 评论 -
js生成随机数
Math.random()来生成指定范围内(如:1-100)的随机数一、包括下线数字(lower)不包括上限数字(upper)/** * 产生随机整数,包含下限值,但不包括上限值 * @param {Number} lower 下限 * @param {Number} upper 上限 * @return {Number} 返回在下限到上限之间的一个随机整数 */function ...原创 2018-11-28 11:55:37 · 6631 阅读 · 0 评论