JS
JAVASCRIPT
前端_小智
一个无聊的前端er
展开
-
JavaScript的闭包到底有什么特别之处?
什么是闭包?闭包是可以访问其定义的“外部"范围的函数,因此,即使闭包函数终止,它也可以访问外部作用域中的值。例子:function takeOne(){ let i = 0; return function incrementFunction(){ return i++; }}上面的代码表示一个函数返回另一个函数。但是,调用takeOne并获取后incrementFunctioon,即使已经终止incrementFunction,takeOne也会记住局部变量takeOne。使用原创 2020-06-21 14:08:42 · 289 阅读 · 0 评论 -
DOM事件的三个阶段
事件发生后,会在DOM树上传播,DOM事件流分为三阶段:捕获,目标,冒泡如下图:事件的发生:三个阶段捕获:由外 向内,记录各级元素上绑定的相同事件 IE8中无此阶段目标触发: 首先触发目标元素上的事件处理函数冒泡:按照捕获顺序的反向,有内到外,依次触发各级父元素绑定的事件处理函数在事件处理中目标阶段被看做冒泡阶段的一部分如果有多个相同类型事件的事件监听函数绑定到同一个元素,当该类型的事件触发时,它们会按照被添加的顺序执行。EventTarget.addEventListe原创 2020-06-06 15:09:19 · 389 阅读 · 0 评论 -
js中的一些函数问题
TEST1function Foo(){ getName = function(){ alert(1); } return this; } var getName = function(){ alert(4); } Foo().getName(); //1 解析:声明提前后再分析代码。 var getName; function Foo(){ get...原创 2020-02-14 11:12:32 · 243 阅读 · 0 评论 -
JS-createDocumentFrag()方法以及和createElement()方法的区别
createDocumentFrag()方法几种常见的动态创建HTML节点的方法createAttribute(name) 用指定名称name创建特性节点createComment(text) 创建带文本text的注释节点createDocumentFragment() 创建文档碎片节点createElement(tagname) 创建标签名为tagname...原创 2020-01-05 23:03:27 · 546 阅读 · 0 评论 -
js中正则表达式用法和常用的几个API
Javascript正则表达式正则表达式在很多地方都常见,Java、python、C#等等,但是正则表达式不受语言的影响,遵守自身语法。何为正则表达式?正则表达式是构成搜索模式(search pattern)的字符序列。.当您搜索文本中的数据时,您可使用搜索模式来描述您搜索的内容。正则表达式可以是单字符,或者更复杂的模式。特点:灵活性、逻辑性和功能性非常强;可以迅速地用极简单...原创 2019-12-29 22:03:54 · 815 阅读 · 0 评论 -
JavaScript作用域与作用域链
js中变量的作用域(scope)分为两种,全局变量和局部变量。[[scope]] 指作用域,存储了执行期上下文的集合。执行期上下文又分为两种,Global Object (GO) 和Activation Object(AO)。在最外层函数定义的,基于window对象的变量拥有全局作用域。就是对任何内部函数来说都是可以进行访问的。GO是全局的执行期上下文。<script> ...原创 2019-12-23 21:00:22 · 115 阅读 · 0 评论 -
JavaScript中substring()方法与substr()方法的区别与使用
substring()方法与substr()方法的区别与使用在日常编程处理字符串的时候,经常会需要用到截取,js提供了两种方法分别是substring()方法和substr()方法。这两种方法在字面上差不了多少,但是在使用上却是不大相同的。1、substring(start: int, end: int) 方法第一个值 start ,表示起始位置;end ,表示结束位置。使用代码示例:...原创 2019-12-21 15:01:10 · 635 阅读 · 0 评论 -
JS关于数组去重的一些方法
js数组去重是前端面试中常见的面试题,而关于js数组去重的方法也有很多。就数组去重我归纳了下列一些我接触到的方法。后续也会渐渐补充。1、用for循环嵌套for循环的方法通过创建一个新的空数组,建立两层循环遍历判断当前元素是否等于原数组中的当前元素。而for循环嵌套的一些方法来判断是否相同的过程是一样的,只是后续如何处理的方法各有所依。1 、原生方法(未使用API)在建立一个新的空数组后,循...原创 2019-12-21 11:31:33 · 109 阅读 · 0 评论 -
javascript中数组的冒泡排序
数组的冒泡排序冒泡排序之所以叫冒泡排序,是因为使用这种算法进行排序的时候,数值会向气泡一样的从数组的一端漂浮到另一端。假设正在将一组数字按照升序排列,较大的数会浮动到数组的右侧,而较小的值会浮动到数组的左侧。之所以产生这种现象是因为算法会多次在数组中移动,比较相邻的数据,而左侧值大于右侧值时将他们进行互换。冒泡排序的核心思想是两两比较相邻的数,如果顺序相反则交换位置,直至没有顺序相反的为止。...原创 2019-12-15 19:36:33 · 205 阅读 · 0 评论 -
JS中函数的隐式参数(Arguments) 和arguments对象
函数显式参数(Parameters)与隐式参数(Arguments)函数的显示参数parameters是日常会经常用到的对象。 显示参数是在函数定义时列出。function fun(parameter1,parameter2,parameter3,){ //要执行的代码}隐式参数(arguments):函数的隐式参数是函数调用时真正传递给参数的值。隐式参数规则:...原创 2019-12-15 14:20:08 · 596 阅读 · 0 评论 -
关于JS的变量运算符、对象、函数等自我理解
JavaScript基础(简介、变量、数据类型、运算符、对象、函数)一、JavaScript简介js是基于对象和事件驱动的语言,应用于客户端.基于对象:提供好了很多对象,可以直接使用(java必须自己来new);事件驱动:鼠标滑动就是一个事件;客户端:浏览器1234二、作用:js在操作页面的html标签js可以对页面中html标签进行curdjs相当于java中操作xml...原创 2019-12-09 08:41:16 · 105 阅读 · 0 评论