js阶段性总结

哈喽,大家好!

    本人为职业技术学院里面有幸进入或者说即将进入本行业摸爬滚打的小白一枚,瞎吹胡侃比专业知识更擅长的萌新,最近也是拜一位良师所赐学习了javascript,发表己见若有不对欢迎大家积极纠正!!!

个人认为html像我们代码赤裸的的身体,而css更像我们为高低胖瘦的代码穿上五颜六色的衣服,反而js好像我们给漂亮的行囊注入的有趣思想。

js中我觉得分为几部分

一 数据类型

数据类型分为简单数据类型和复杂数据类型

    简单/基本/原始数据类型

           numberstringbooleanundefinednull

    复杂数据类型

            objectArrayfunctionDateRegExp....

二者的区别也在于在内存中储存的位置

二 就是数据类型的转换分为隐式转换类型和强制类型转换

    隐式转换

             运算过程

    强制类型转换

            Number()

            String()

            parseInt()

            toString()

            parseFloat()

三 接下来就是运算符

    运算符也分为逻辑运算符和算数运算符以及比较运算符还有赋值运算符和三元运算符

            逻辑运算符

                    &&
                    ||
                    !

                    扩展:
                    假:false、0、null、undefined、''
                    真:其它
             逻辑运算符的扩展: 若逻辑运算符两边出现了非布尔类型,则结果也不一定是布尔类型
                    ||:
                        若第一个为假,则结果第二个
                        第一个为真,结果就是第一个 (短路)
                    &&:
                        若第一个为假,则结果就是第一个
                        第一个为真,则结果为第二个

            算术运算符

              + -  *  /  %
              ++  --

              注意:
              1.自增、自减运算符前置后置,对变量自身没有影响
              2.赋值时:
                (1)运算符前置,先运算,再赋值
                (2)运算符后置,先赋值,后运算

            比较运算符

                    >  <  ==   ===
                    <=  >=   !=    !==

            赋值运算符

                    =  +=  -=  /=  *=  %=

            三元运算符

                    条件?代码1:代码2

四 程序结构

顺序结构 程序的默认结构

循环结构

for while do..while for.in 遍历对象(object/arraay) for.of (ES6) 分支结构

if if..else if..else if.. switch 五 同步异步问题

    同步:按照顺序执行,会阻塞

    异步:不一定按照顺序,不会阻塞  

    注意:同步和异步同时出现,先执行同步

//异步 // setTimeout(function () { // console.log(1); // }, 100)

    // setTimeout(function () {
    //     console.log(2);
    // }, 50)


    // setTimeout(function () {
    //     console.log(1);
    // }, 0)

    // console.log('2');


    function getData(fn) {
        let a;
        setTimeout(function () {
            a = 10      //服务器给的一份数据 10
            fn(a)
        },1000) 
        // return a;
    }

    // var num = getData()
    // console.log(num);//??  undefined
    //10???

    getData(function(num){      //回调函数
        console.log(num);
    })

    //解决异步传参问题 :回调函数

接下来关于数组以及后续的dom和函数以及为补充的各种事件过几天继续给大家更新