前端学习(二十六)移动端s(笔记)

===================================================
弹性布局
rem布局
---------------------------------------------------
CSS3     transform
    rotate                 旋转
    translate             平移
    scale                 缩放
    skew                 扭曲
=======================================================
    rotate    深入
        rotate()             Z轴
        rotateX()             X轴

    透视效果
        perspective(px)         透视的强度
            数值越小越明显
            推荐范围:     800-1200

    切记:
        transform一定要加初始值
==========================================================
    translate         
        translate(x,y)             x轴和y轴方向平移

        Z轴平移
        translateZ()
    --------------------------------------------------
    开启3D模式
        transform-style: preserve-3d;

        开启3D模式,一般加给父级
        perspective一般加给父级

    3D正反面
        父级
            -webkit-transform-style: preserve-3d;
            -webkit-transition: 1s all ease;
            -webkit-transform: perspective(800px) rotateY(0deg);

            子级
                正面
                    -webkit-transform: translateZ(1px);
                反面
                    -webkit-transform: translateZ(-1px) scale(-1,1);

        3d盒子(立方体)
        父级
            -webkit-transform-style: preserve-3d;
            -webkit-transition: 1s all ease;
            -webkit-transform: perspective(800px) rotateX(0deg) rotateY(0deg);
        子级
        front         translateZ(1px);
        back         translateZ(-1px);
        left        translate(-150px,0) rotateY(-90deg);
        right        translate(150px,0) rotateY(90deg);
        top            translate(0,-150px) rotateX(90deg);
        bottom        translate(0,150px) rotateX(-90deg);
==========================================================
    定时器并不稳定

    当transition走完执行的事件
        transitionend        必须用事件绑定加
==========================================================
    翻书
        iNow         oBox     oFront     oBack     oPage2
        0             1         1         2        2
        1             2         2        3        3
        2             3        3        1        1
        3             1        1        2        2
        4             2        2        3        3
        5             3        3        1        1
        6             1        1        2        2

        iNow%3+1

        (iNow+1)%3+1



    爆炸
    反转
========================================================
字符串对象
    str.charAt()             
    str.indexOf()             
    str.lastIndexOf()
    str.substring()
    str.split()
    str.toUpperCase()
    str.toLowerCase()
数组对象
    arr.push()
    arr.pop()
    arr.unshift()
    arr.shift()
    arr.splice()
    arr.join()
    arr.concat()
    arr.reverse()
    arr.sort()

Math     对象
    Math.random()         获取0-1的随机小数,绝对不包括1

    取整
    Math.floor()         向下取整
    Math.ceil()         向上取整
    Math.round()         四舍五入

    其他
    Math.pow()             n次方     幂
        Math.pow(3,2)     3的2次方
    Math.sqrt()         开方     

    Math.max(10,30,0,100,25)             最大值
    Math.min()                             最小值

    Math.abs()             绝对值

    三角函数
    Math.PI         π
    Math.sin()
    Math.cos()
    Math.atan2()



    function rnd(n,m){
        return parseInt();
    }

======================================================
i的问题
    1.循环中加事件,事件中使用i
    2.循环中加定时器,定时器中使用i

    函数
==============================================
    i值问题怎么解决?
        封闭空间、自执行函数、闭包
================================================
    传统语言
        c语言
            申请空间(1000)
            ...用
            free(1000)

            内存泄露
            内存溢出
    垃圾回收机制     生命周期     生存周期
    局部 很短        函数调用完成后,里面的局部变量会消失
    全局 很长         关闭页面的时候
    闭包 可长可短    
        只要里面的函数还有用,函数中局部变量就不会消失
        只要里面的函数还有用,函数中所有的局部变量就不会消失
        只要里面的函数还有用,那整条作用域链上的变量就不会消失

    function show(){
        var a = 12;
    }
                 调用前         没有a
    show();     调用中         有a
                调用后         没有a

    function show(){
        var a = 12;
        document.onclick = function(){
            alert(a);
        };
    }
            调用前            没有a
    show()    调用中             有a
            调用后             有a

    function show(){
        var a = 12;
        var b = 5;
        document.onclick = function(){
            alert(a);
        };
    }

            调用前             没有a,没有b
    show()    调用中             有a,有b
            调用后             有a,有b

    var a = 12;
    function show(){
        var b = 5;
        function show2(){
            var c = 3;
            document.onclick = function(){
                alert(a);
            };
        }
        show2();
    }

作用域链:现在自身找,如果没有,找父级,如果在没有再往上找。直到找到全局。

======================================================
闭包是什么?
======================================================
递归
    函数调用自己,只是递归的一种形式
    大事化小

    1.兔子不吃东西,不会死
    2.兔子可以近亲繁殖
    3.小兔子,三个月长大

1    2    3    4    5    6    7    8    9    10    11     12
1    1    2    3    5     8     13     21     34     55     89     144

    12         144         1440
    24        46368         463680
    36        14930352     149303520
    48         4807526976     48075269760

    斐波那契数列
    斐波那契算法
    兔子数列
=======================================================
    99乘法表

posted @ 2018-09-03 16:50  王小鱼Oo  阅读(175)  评论(0编辑  收藏  举报