js
js问题及知识总结
大鸡腿123
从今天开始,记录自己在学习前端和web安全的一些资料和问题
展开
-
轮播图写法详细汇总(原生JS+BootStrap+jQuery)+渐变轮播
轮播图原生JS写法BootStrapjQuery原生JS写法轮播图主要包括三个功能:自动循环播放点击左右箭头换页点击小圆相应的图显示<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <t原创 2020-07-25 20:31:58 · 438 阅读 · 0 评论 -
js 定时器如何达到transition的效果
定时器其实是Timing事件,在制定的时间内执行代码达到一些效果。setTimeout(函数,毫秒数):在指定的毫秒数后执行函数,可以看成一个延迟效果。setInterval(函数,间隔毫秒数):在setTimeout()基础上重复执行此函数clearTimeout(setTimeout返回的变量):停止执行setTimeout()clearInterval(setInterval返回的变量):...原创 2020-07-18 18:30:13 · 952 阅读 · 0 评论 -
js BOM
BOMBOM和DOMwindow对象screen对象location对象history对象BOM和DOMBOM 是浏览器对象模型,DOM是文档对象类型。window对象window 对象代表了浏览器窗口,而DOM中的document 对象也是window对象属性。获得浏览器窗口尺寸://适用于所有浏览器:window.innerWidth || document.documentElement.clientWidth|| document.body.clientWidth;window.i原创 2020-07-17 21:14:06 · 110 阅读 · 0 评论 -
js DOM
DOM 方法:在节点上执行的动作DOM属性:在节点上设置和修改的值innerHTML - 节点(元素)的文本值parentNode - 节点(元素)的父节点childNodes[ ] -节点(元素)的子节点attributes - 节点(元素)的属性节点firstChild - 节点的第一个孩子lastChild - 节点的最后一个孩子nodeValue - 规定节点的值(元素、文本、属性)...原创 2020-07-17 20:46:36 · 120 阅读 · 0 评论 -
js基本语法
1.输出window.alert():弹出警告框document.write():将内容输出到HTML文档innerHTML:修改HTML元素内容console.log:输出到控制台注意:当HTML文档加载完成之后,再执行document.write()语句的话,页面会被覆盖。例如点击按钮执行document.write2.数据类型var length = 16; // Number 通过数字字面量赋值var原创 2020-07-16 17:21:34 · 96 阅读 · 0 评论 -
Event Loop事件循环(setTimeout/setInterval/Promise)
我们把同步任务和异步任务进行细分为宏任务和微任务。macro-task(宏任务):包括整体代码script,setTimeout,setIntervalmicro-task(微任务):Promise,process.nextTick第一次循环,从上到下,遇到主线程就执行,遇到宏任务就先放进宏任务队列中等待执行,遇到微任务就放到为任务队列中等待执行。第一次宏任务循环结束,处理第一次循环中的微任务,第一次循环完全结束。开始第二次循环,从第一次循环中的等待的宏任务队列中执行,如果宏任务中包含宏任务或微原创 2020-08-05 17:47:02 · 541 阅读 · 0 评论 -
js中的事件代理/委托
在学习事件代理之前,我们首先要知道一个概念:事件冒泡事件冒泡事件捕获:当某个元素触发某个事件(如onclick),顶层对象document就会发出一个事件流,随着DOM树的节点向目标元素节点流去,直到到达事件真正发生的目标元素。在这个过程中,事件相应的监听函数是不会被触发的。事件目标:当到达目标元素之后,执行目标元素该事件相应的处理函数。如果没有绑定监听函数,那就不执行。事件冒泡:从目标元素开始,往顶层元素传播。途中如果有节点绑定了相应的事件处理函数,这些函数都会被一次触发。这是当一个事件触发时原创 2020-08-05 16:29:23 · 132 阅读 · 0 评论 -
js中for循环总是取最后一个值的几种解决办法
<ul id="myul"> <li>1</li> <li>2</li> <li>3</li></ul> <script> var u=document.getElementById("myul"); var l=u.getElementsByTagName("li"); for(var i=0;原创 2020-08-05 10:37:05 · 12732 阅读 · 3 评论 -
js闭包中的变量释放问题
js中,我们知道,有全局变量和局部变量。这些都不再多说,在之前讲闭包的时候都说过。在一般情况下,我们处理的问题都基本比较简单,这次专门来说说闭包的变量释放问题。全局变量一般不会被销毁,因为不知道什么时候就会被引用。而局部变量在所在作用域中执行完毕后会被销毁,而我们可以使用闭包在函数外部使用函数内部的变量。我们看下面这个代码: function fun(){ var i=0; return function(){ console.lo原创 2020-08-04 22:13:47 · 9173 阅读 · 5 评论 -
使用Set达到数组的交差并补操作
var arr1=[1,2,3,4],arr2=[2,3,8],arr3=[3,4,5,6]; var set1=new Set(arr1),set2=new Set(arr2),set3=new Set(arr3); //交集:arr1和arr2交集为[2,3] function jiaoji(setA,setB){ var s=new Set();//新建一个Set,用于存放最后的结果 for(let i of setB){//遍历setB...原创 2020-07-31 15:57:49 · 188 阅读 · 0 评论 -
同步和异步编程的区别
同步编程就是按照我们写代码的顺序执行代码,而异步编程不按照代码顺序执行,使其编程效率更高。要想实现异步编程,经常用到回调函数。回调函数就是告诉你当你这个任务执行完后要干什么,比如setTimeOut(callback,time),callback就是回调函数,就是指setTimeOut这个函数执行完后,会做什么...原创 2020-07-31 11:17:17 · 594 阅读 · 0 评论 -
变量提升以及let、const详细讲解
let和constlet 和 const 变量声明块作用域。什么是块作用域?块作用域=函数内部+花括号内部。可以参考我之前的博客,里面讲了作用域问题。作用域那么我们先来讲讲变量提升的问题。一开始说变量提升,你可能会觉得这是个什么词,没听过,一听就挺难理解。但如果你之前写过比较多的JavaScript代码,你基本上一直都在遇到变量提升这个问题。我们都知道,js中的变量,我可以先声明再赋值,也可以先赋值再声明,除了赋值,我们甚至可以使用。 var a; a=5; console.log(a+原创 2020-07-29 16:50:28 · 973 阅读 · 0 评论 -
作用域、闭包、原型链,到底怎么理解?
11原创 2020-07-29 15:50:34 · 567 阅读 · 0 评论 -
前端学习路线第一阶段js部分
js基本语法DOM编程BOM编程AJAXjQuery原创 2020-07-26 21:02:50 · 139 阅读 · 0 评论