5.5 Underscore 工具库

underscore 是一个JavaScript工具库,它提供了一整套函数式编程的实用功能,但是它又没有扩展任何JavaScript 内置对象. 那么我们为什么还用它呢?我们又用它的那些价值呢? 其实,它就是给我们解决了:"如果我们面对一个空白 的HTML页面,并希望立即开始工作,但是想想我们需要什么? " .它就是弥补了 jQuery 没有实现的功能,同时又是Backbone必不可缺少的一部分. underscore提供了100多个函数,包括常用的:map,filter.invoke.-------------------- / 当然他还有更多 的专业辅助函数, 列如:函数的绑定.JavaScript模板功能,创建快速索引.强类型相等测试. 其实 目前我们 用他的 主要 原因是可以 实现 随机数 列如
A :在相片墙中用到的
1: 随机角度 var radoRace = _.random(0,360); 赋值给 li.style.transform =' rotate('+ radoRace +'deg)';
2.在屏幕的随机位置
var randomX = _.random(0,screenW);//水平方向的坐标 表示 X 的取值在0到360的任意值
var randomY = _.random(0,screenH);//这里的图片会分散整个屏幕

( // var randomX =.random()*screenW;//图片都缩在左上角,但是点击的时候也还是实现)
(// var randomY =
.random()*screenH;)

        //3.3.3赋值给 每个 li
        li.style.left = randomX + 'px';
        li.style.top = randomY + 'px';   

B:在创建星星 没有用到的 注意 两者 都是获取屏幕的位置的不统一

        //4 设置位置  星星的位置是随机的 
        var pointX = Math.random() * screenW;
        var pointY = Math.random() * screenH;

        // 4.1 把值赋给 星星
        span.style.left = pointX + 'px';
        span.style.top = pointY + 'px';

        // 5 星星跳出来的频率 给它不统一 就是没有规律的出来.
        var blockDelay = Math.random()*2;
        //既然是延迟 那么就得延迟多少秒  这样的话  blockDelay 是数值 单位的 s
        span.style.animationDelay  =''+ blockDelay + 's'; //注意 这里 必须要用驼峰命名法

        // 给他们设置随机大小不一样 吧
        var max_min = Math.random()*1.5;
       // span.style.transform = 'scale()'// 里面是数值 所以
        span.style.transform = 'scale('+max_min +')'

你可能感兴趣的:(5.5 Underscore 工具库)