你不知道的javascript – 看完怀疑自己是个假前端

2018-07-27 10:07:00 3276 3 编辑:深正互联 来源:互联网

作为前端人员,我们平时肯定是离不开javascript的,但是,你真的熟悉javascript?

javascript

一:定时器

首当其冲就是定时器了,你可能说定时器我经常用啊,没有我不会的。甚至有熟手看到标题就想到,我知道了,你肯定要说定时器使用之前先要清除定时器再执行新的定时器。NO、NO、NO,下面一段代码告诉你,你不知道的定时器。大家用过定时器的应该都知道,平时我们使用定时器只传进去两个参数,一个是function,一个是触发的时间,那么你可曾想过第三个第N个参数又是怎么耍?

setInterval(function(a){

   console.log(a)

},500,100)

//结果控制台打印出来是100

二:字符串拼接

document.body.innerHTML = '<div>div<div><span>span</span>';

这样好像也没什么问题,如果内容比较多呢?想折行显示怎么办?大家通常是不是用+号进行拼接,那么现在介绍告诉你个小技巧,你可能又说我知道,ES6最新出来的字符串模板拼接``,傻X,就你知道我不知道啊,咱们来点我知道你未必知道的OK?

document.body.innerHTML = 

  '<div>div<div>\

  <em>em<em>\

  <span>span</span>';

三:console.log

console.log( "

\n %c 深正互联 %c  https://www.szhulian.com \n\n",

"color:#FFFFFB;background:#1abc9c;padding:5px 0;border-radius:.5rem 0 0 .5rem;",

"color:#FFFFFB;background:#080808;padding:5px 0;border-radius:0 .5rem .5rem 0;"

);

四:for循环

for(var i = 0;i<5;i++){

    for(var j = 0; j<1; j++){

        if(i==3){

            break

        }

    }

}

//结果:0,1,2,4,3确实没跳出来,但是4跳出来了,这说明break只会阻断当前循环,并不会阻断整个嵌套循环

a : for(var i = 0;i<5;i++){

    for(var j = 0; j<1; j++){

        if(i==3){

            break a

        }

    }

}

//结果:0,1,2


五:匿名函数自执行

(function(){

  alert(1)

})()

这段代码应该不陌生,在很多插件源码都喜欢这么玩,但是你知道吗,类似这种写法还有很多

!function(){ //通过位运算符~、!、+等等都可以

  alert(1)

}()

本站文章均为深正网站建设摘自权威资料,书籍,或网络原创文章,如有版权纠纷或者违规问题,请即刻联系我们删除,我们欢迎您分享,引用和转载,但谢绝直接搬砖和抄袭!感谢...
关注深正互联

15

技术从业经验

多一份方案,会有收获...

联系深正互联,免费获得专属《策划方案》及报价

在线咨询
微信交谈
拒绝骚扰,我们只想为给您带来一些惊喜...
多一份免费策划方案,总有益处。

请直接添加技术总监微信联系咨询

深正互联微信
扫描即可沟通