栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

解释下这段代码的意思!

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

解释下这段代码的意思!

作用

在你的Chrome浏览器的控制台中输入这段代码,你会发现不同HTML层都被使用不同的颜色添加了一个高亮的边框。是不是非常酷?但是,简单来说,这段代码只是首先获取了所有的页面元素,然后使用一个不同的颜色为它们添加了一个1px的边框。

解析

  • [].forEach.call() 
    => 调用引用数组的forEach方法
  • $$('*') 
    =>
    document.querySelectorAll('*') 
  • ~~a
    =>
    parseInt(a)
  • 1<<24
    => 对二进数1小数点右移24位
  • (parseInt(Math.random()*(1<<24)).toString(16))
    => 获得了一个位于
    0-16777216
    之间的随机整数,也就是随机颜色,再使用
    toString(16)
    将它转化为十六进制数。

手写简版

[].forEach.call(        document.querySelectorAll('*'),        function(a){ a.style.outline="1px solid #" +  (parseInt(Math.random()*(1<<24)).toString(16))        }    )

看蒙了,别问我怎么知道的,百度的!!

参考:

  • 从一行代码里面学点Javascript :https://my.oschina.net/l3ve/blog/330358
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/371837.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号