
JS实践
pink_pantise
这个作者很懒,什么都没留下…
展开
-
变量声明与函数声明的权重问题
今天在学习的过程中突如其想:如果,我定义了一个变量赋了一个函数,又定义了一个同名函数,那么会执行哪一个呢?于是:var fun;function fun(){} // fun(){}可以看到定义为赋值的fun被赋值了定义的fun()函数,写到这里我想到,如果直接赋值的输出会不会是一样的效果。var fun = function (){} // (){}出乎意料的输出了一个匿名函数,因为赋值给fun变量的确实是一个匿名函数。function fun(){}var fun;console原创 2021-02-08 19:55:48 · 362 阅读 · 1 评论 -
关于for循环的简化
今天写一个倒金字塔的作业,写的过程中发现for中是可以有多个变量的前面是变量的初始赋值,最后一个是每次循环后重新赋值。老师一直要求我优化代码,优化着优化着感觉发现了新天地!源代码是这样子的:for(var i=0;i<13;i++){ if(i<=6){ document.write("<hr width="+ (100-i*15) +"% />"); }else{ document.write("<hr width="+ (100-6*15原创 2020-12-28 23:08:10 · 1060 阅读 · 1 评论 -
setTimeout()延迟执行事件无法执行
今天在看红宝书的时候突然看到setTimeout()部分,想起来之前做东西时候遇到的一个问题!当时为了单击和双击不冲突,所以给mousedown加了setTimeout延迟执行。后面又要区分鼠标移动和没移动又加了一个setTimeout,就遇到问题了。JavaScript在执行中是单线程的,所以setTimeout()方法会把要执行的事件放在一个队列中,会先后执行,两个setTimeout同时执行的话就会产生冲突程序会先执行mousedown中的延迟,mousemove的延迟会被放在down延迟的后面原创 2020-12-28 00:27:52 · 1454 阅读 · 0 评论 -
split()分割字符串后不能用name选中dom
最近在做一个svg移动和托选框选中的小练习。练习过程用到html()方法插入语句,但是插入的语句好像并不能通过event获取dom且在做托选框选中时只能通过取出插入的语句,遍历svg图像的位置做到托选选中。通过replace提取出需要的name属性值(svg的name属性值为x,y值),然后通过split(,)分割出x,y的值。注:split可以通过分割一维数组创建出二维数组!svg_name[i] = svg_name[i].split(",");这种方式分割出一个二维数组(问过一个前端大神,他原创 2020-12-27 21:35:42 · 252 阅读 · 0 评论