美文网首页JavaScript学习实录
02-javascript基础学习笔记

02-javascript基础学习笔记

作者: 一个要搞前端的ZL | 来源:发表于2017-03-06 18:59 被阅读0次

    1.循环语句###

    1.1 while循环
    While 循环会在指定条件为真时循环执行代码块。

    while (条件)
      {
      需要执行的代码
      }
    

    1.2 do/while循环
    do/while 循环是 while 循环的变体。该循环会执行一次代码块,在检查条件是否为真之前,然后如果条件为真的话,就会重复这个循环。

    语法:
    do
      {
      需要执行的代码
      }
    while (条件);
    

    1.3 for循环

    • 语句1:最先执行,而且永远只执行一次
    • 语句2:执行完语句1,就执行语句2,当语句2条件为true时,执行循环体中的代码,执行完循环体中的代码后执行语句3,当语句3执行完后那么会再次执行语句2,直到语句2的条件判断为false时,循环退出
    语法:
    for(语句1;语句2;语句3){
        //需要执行的代码
    }
    

    2.break与continue###

    2.1 只出现在循环体中,都是用于结束循环,单独写会报错
    2.2 break:直接结束整个循环
    2.3 continue:用于跳过循环中的一个迭代,例如输出不能被3整除的数

    for(var i = 1;i<=100;i++){
            if(i%3==0)
            continue;
            console.log(i);
        }
    

    3.实际开发中不管什么项目,都是分块开发,每个板块再整理出各种需求,多加注释###

    4.函数###

    4.1定义:具有特定功能的代码块
    4.2 两种定义方式:

    方法一:
    function 函数名(){
        函数体
    }
    方法二:
    var demo = function(){
        函数体
    }
    

    4.3 注意点:函数定义完以后函数名会被放到内存中,解析器不会看代码块的内容,函数想要被执行,必须手动调用,解析器才会返回去看代码块中内容,调用方法:函数名称();其中()表示立即执行
    4.4 函数的几种方式

    • 4.4.1 无参无返回值
    • 4.4.2 有参无返回值
      参数写在()中,参数也是标识符,他就是一个变量,参数在函数调用时赋值
    例如:
    function printRose(num){
        //代码块
    }
    
    • 4.4.3 无参有返回值
      返回值:当函数执行完毕的时候,如果想得到一个结果,那么用return返回,用return返回的值就是函数的返回值。
    如:
    function test(){
        return 123;
    }
    var result=test();
    console.log(result);
    
    • 4.4.4 有参有返回值
      有参数,也有返回值的函数
    如:
    function average(num1,num2,num3,count){
        return (num1+num2+num3)/count;
    }
    console.log(average(13,14,15,3));
    

    4.5 在开发中直接出现数字称为魔鬼数字,如某个算数中出现固定除以3而非变量,开发中无返回值函数比有返回值函数用的多。因为函数注重的是过程而不是结果,有返回值的函数大多是工具类中使用

    4.5 递归函数:自己搞自己
    一次又一次的调用自己并开辟新的空间,结束时也是从内向外一层一层释放空间,函数内有return将会结束该函数,作为了解,实际开发中不常用。

    5.变量的作用域###

    5.1 局部变量(内部变量)

    • 定义:声明在函数内部的变量或者函数的参数
    • 作用域:只有在函数内部能使用
    • 生命周期:从定义的那一行开始,当函数执行完毕的时候死去

    5.2 全局变量

    • 定义:声明在函数外部的变量
    • 作用域:可以在整个JS文件中使用
    • 生命周期:只有当当前的网页关闭才能释放

    5.3 注意:开发中,全局变量和局部变量相比,局部变量用的更多。因为全局变量相对局部变量来说,更加耗内存。所以实际开发中应尽量避免全局变量的使用

    5.4 在函数内部如果把值赋给未声明的变量,则该变量将会被作为全局变量来使用。开发中不建议使用,仅作为了解(没有var声明的变量会提升为全局变量)

    5.5 变量的提升

    • 在函数内部如果提前使用了和外部相同名称的变量,那么就会发生变量提升。相当于把变量的声明提升到函数的顶端,但并不赋值,实际开发不建议使用,仅作为了解,只是用来对付面试。

    6.JavaScript初体验###

    js动态控制网页样式与结构

    6.1 什么是dom

    • 比喻成一颗长满标签的树

    6.2 什么是对象

    • 具有很多功能的功能组
    • 在文档中引申为document
    • 如果一个对象想要调用其方法,通过"."进行document.getElementById("ID名称");在js中,所有CSS样式中划线"-"都改为驼峰命名法

    6.3 js控制结构:改变对象中的内容结构

    如:
    var dom = document.getElementById("box");
    console.log(dom);
    dom.innerHTML="<a href=#>这里是一个超链接</a>"
    

    7.事件三要素###

    7.1 事件源(发起者)

    7.2 事件(动词)

    • onclick:点击事件
    • ondbclick:鼠标双击
    • onchange:文本内容或下拉菜单中的选项发生变化
    • onfocus:获得焦点
    • onblur:失去焦点
    • onmouseover:鼠标悬停
    • onmouseout:鼠标离开
    • onload:网页文档加载
    • onunload:关闭网页

    7.3 事件处理程序(函数)

    事件源.事件=事件处理程序

    8.封装代码###

    抽取原则:代码高度相似、功能相同的代码抽取出来,变量作为参数

    • 第一步:自定义一个函数
    • 第二步:把不同的变量作为参数
    • 第三步:将代码进行整合

    9.入口函数###

    当整个文档加载完毕才执行,在head中写script代码时使用

    window.onload=function(){
        //script代码
    }
    

    10.数组###

    10.1 数组是一个对象,用来存储其他变量的集合

    10.2 数组的声明

            var arr = new Array(); //几乎没人用
            var arr = [];
    

    10.3 给数组添加元素

    定义的同时添加元素
    var arr = [1,"123","hello"];
    
    利用数组对象的push方法添加元素,永远添加在末尾
    arr.push(元素);
    
    先定义再逐个添加
    var arr=[];
    arr[0]=1;
    arr[1]="true";
    arr[2]=false;
    arr[3]=undefined;
    

    10.4 数组的常用方法,请参考W3C

    arr.length; //返回求数组长度
    增
    var arr=[12,undefined,null,"str"];
    arr.push(添加的值1,添加的值2,...);
    arr[5]=188;
    删
    var result = arr.pop(); //删最后一个并返回
    console.log(result);  //"str"
    改
    arr[1]=1;
    查
    arr[3];
    

    10.5 数组的取值

    根据脚标来取值
    var result = arr[1];
    result //"true";
    

    10.6 数组的遍历:就是取出数组中的每一个元素

    var arr=[12,"123",undefined,false,88];
    
    arr[0];
    arr[1];
    arr[2];
    arr[3];
    arr[4];
    ==>>代码抽取
    for(var i=0; i<arr.length;i++){
        arr[i];
    }
    

    相关文章

      网友评论

        本文标题:02-javascript基础学习笔记

        本文链接:https://www.haomeiwen.com/subject/pcmugttx.html