JavaScript中什么是闭包?
在开始之前我得先吐槽一下:到底是哪个扑街发明的这个词?在我没有了解闭包是个啥玩意儿时,闭包是啥玩意儿,以前怎么没听过,听起来很厉害的样子其实你生活中写的很多代码都是闭包,在你开始学js的时候就已经用过闭包了闭包:简单来说,闭包是指可以访问另一个函数作用域中变量的函数varage="18";functionfun(){console.log(age);}fun();//'18'以上代码就是闭包了,简单吧?在你写的很多代码里,肯定有这种写法你会说:这…就这么简单?可我在网上看到的描述不是这样的啊,都是要return的呀!//第一种写法functionfun1(){varage="18";functionfun2(){console.log(age);}returnfun2;}varfun=fun1();fun();//'18'//第二种写法functionfun1(){varage="18";varfun2=func...
C#获取软件ico图标
我个人是比较喜欢封装一些需要安装在电脑上的软件的,封装后就是绿色版(携带版)无需安装,即点即用,非常的方便例如:pr、ps(虽然很大,但是出门在外,做一些小处理还是比较方便的,不需要在别人的电脑上安装即可使用,插U盘就可以)Chrome、有道翻译、Linux连接工具FTP、投屏软件、网易云音乐、某些录屏软件、火绒弹窗拦截、火绒剑、文件粉碎、鲁大师(去除无用功能,只保留主要功能)一些小工具等在封装的时候如何获取相应软件的图标呢?(有些软件是包含在安装目录里的),因为自己身为程序员,这种小事就自己动动手写嘛之前有学过C#的一些开发经验,所有就打算写一个废话也不多说了,直接看正文正文打开IDEVisualStudio我的是2012的(VisualStudio2012)直接点击左边的新建项目配置创建完成后,第一时间肯定是先修改标题名啦(这里我就不截那么多图了)然后再右边的解决方案资源管理器里将Form1.cs重命名为ForIcon.cs注意右下角有很多选项,我先修改了软件标题信息属性名属性值描述(Name)ForIcon用于处理代码中对象的昵称Text获取软件ico图标软件名称TopMo...
CSS单位你真的了解吗?
CSS常见单位:px、%、em、rem、vh、vw全部单位:%、px、cm、mm、in、pt、pc、ch、em、ex、rem、vh、vw、vmin、vmax本文主要内容只会讲解常见css单位,并不会过深的去探讨(学而用不到,很快就会忘记)单位描述px像素(Pixel)是相对长度单位,px是相对于显示器屏幕分辨率而言的单位%百分比emem的值并不是固定的,他会继承父级元素的大小remrem是CSS3新增的一个相对单位(rootem,根em),表示rem会相对于html根元素,而em是相对于父元素vh视图窗口的高度(viewportheigth)vw视图窗口的宽度(viewportwidth)1px:是相对单位,不管窗体怎么变化,它都是定死的1%:是相对单位,它是相对于父元素的百分比,举例:父元素宽度为100px,子元素设置50%,那么子元素是父元素的一半(50px)em:是相对单位,它是相对于父元素的,举例:父元素字体大小为20px,子元素设置2em,那么子元素40px。如果直接在body里使用,而为修改过body的默认大小,那么html的默认大小是14px,如果写2em的话就是2...
JavaScript中call()-apply()-bind()方法有什么不同?
首先我写的代码,基本上就不会用到这3个方法。。。但是也要明白它们有什么用,具体有什么区别,但我又不经常使用学而不用,很快就会忘掉,所有就有了此篇短文call()call()是一个方法,它是函数的方法call()可以调用函数call()可以改变this的指向为什么会输出空字符串呢?因为this指向window,而window里有一个name属性感兴趣的可以看看:JavaScript为什么会有name变量属性的问题fun()functionfun(){console.log(this)//windowconsole.log(this.name)//''}当使用call()后上面第2点有提到:call()可以调用函数functionfun(){console.log(this)//{name:"Lete乐特"}console.log(this.name)//"Lete乐特"}varlete={name:'Lete乐特'}fun....
JavaScript为什么会有name变量属性的问题
相信很多细心的前端程序有都发现了这点,为什么window会有一个空字符串的name变量属性呢?那么这个name是用来干嘛呢?又有什么用呢?目前我还不知道有啥用,如果有找到的小伙伴可以在评论区留言name是用来定义窗口昵称的,具体有什么用我也不清楚并且还有两个name属性window.top.name(最顶层父窗体昵称)和window.parent.name(父窗体昵称)并且windwo.name这个属性会自动调用toSring()方法window.name=123console.log(window.name,typeofwindow.name)//'123'stringwindow.name=nullconsole.log(window.name,typeofwindow.name)//'null'string当打开一个新页面是可以给这个新页面窗体定义window.name//第一个参数是url地址window.open('','新页面窗体昵称')也可以使用a标签定义<ahref="...