• 8.21 js


    2018-8-21 20:05:43

     2018-8-21 20:56:30

    明天再看!!!!  

    今天空闲多看了书 <百年孤独> <苏东坡传>

    打印结果  shanghai

    js的词法分析 

    // 函数的定义
    
    function  foo(a, b){
        console.log("a:", a)
        console.log("b:", b)
        return a+b;
    }
    
    
    //匿名函数
    var func = function  (a, b){
        console.log("a:", a)
        console.log("b:", b)
        return a+b;
    }
    
    //立即执行函数
    //外部访问不到函数内部定义的变量(用立即执行函数防止变量污染全局变量)
    (function(a, b) {
        console.log("立即执行函数");
        console.log(a+b);
        var sss = "我是函数内部的变量"
    }) (11, 22);
    
    console.log("---------------------------------------------")
    
    //函数的调用
    var ret = foo(11, 12);
    console.log("a+b=", ret);
    
    
    func(11, 22);
    
    
    // js中的词法分析
    
    var age = 18;
    function func3(){
        console.log(age);        // 去AO找age;
        var age = 22;    //  AO.age = undefined
        console.log(age)
    }
    
    func3();        // 问: 执行func3()之后的结果是?
    
    // undefind  22;
    
    var  age = 18 ;
    function foo(){
        console.log(age);
        var age = 22;
        console.log(age);
        function age(){
            console.log('呵呵');
        }
    
        console.log(age);
    }
    foo();        // 执行结果?
    
    //分析:
    //1. 先分析,给AO赋值
    // var age =22 ; --> AO.age=undefined;
    // function age() {console.log("呵呵");}  ---->AO.age =function()
    
    // 2.真正执行阶段  就去AO上找
    //functionn(){....}
    //22
    //22
    
    //总共三个值
    day52
    
    1. 内容回顾
    
    JS
        -JS基础语法
        -BOM(JS操作浏览器)
        -DOM(JS操作文档)
        
    JS基础语法:
        0. JS引入方式
            1. 直接在script标签里面写代码
            2. 在单独的JS文件中写代码,然后通过script标签的src属性引入写好的JS文件
        1. 变量
            1. var 变量名;   var 变量名 =2. 变量的命名 字母 数字 下划线和$组成
            3. 推荐使用驼峰
        
        2. 数据类型
            1. 数字   Number 
                1. NaN
                2. parseInt("111")   --> 把字符串转成数字
                3. parseFloat("111") --> 把字符串转成小数
            2. 字符串 String
                1. 字符串的常用方法
            3. 布尔值 Boolean
            
            4.数组  Array
                1. 常用方法
            
            5. null
            6. undefined
            
        
        3. 条件判断
            1. if else
            2. if; else if; else;
            3. switch (值){
                 case 1:
                 console.log(...);
                 break;
                 case 2:
                 ...
                 
                 default:
                 console.log(上面case都不满足就执行这一句);
               }
        4. 循环
            1. for循环
                for (var i=0;i<值;i++){
                  console.log(i);
                }
            2. while循环
                var i = 5;
                while (i>0){
                    console.log(i);
                    i--;
                }
        5. 运算符
            1. 算数运算符
                + - * / % ++ --
            2. 比较运算符
                == != > < >= <= 
                注意!!! 强等于 ===  !==
                
            3. 逻辑运算符
                ||(或) &&(与)  !(非)
            
            4. 赋值运算符
                = += -= *= /= 
            
            补充:
                Python的lambda
                
    2. 今日内容
        1. 函数
            1. 函数的定义
            2. arguments
                func(11,22)
                
                arguments  --> [11, 22]  arguments[0] arguments[1]
                
            3. 作用域
                1. 函数的调用 要往回找 函数的定义阶段
                2. 首先在函数内部找 -> 内部找不到就往外找,直到找到全局为止
                
            4. 词法分析
                1. 分析(分析的函数内部变量定义过程)
                    1. 先看参数
                    2. 看有没有局部变量
                    3. 看有没有函数定义
                2. 执行(实际执行代码)
    3.  内置的对象和方法
        1. 自定义对象
            1. {name: "xiaoqiang", age: 18}
                -键不用加引号,加上也不出错
                -值如果是字符串必须写双引号
            2. new关键字形式
        
        2. 内置的Date对象   --> Python中的内置模块
        
        3. JSON对象 (背会)
            1. 字符串转对象 --> obj = JSON.parse(string)
            2. 对象转字符串 --> s   = JSON.stringify(obj)
            
        4. Math对象
        
        5. RegExp(正则)
            1. 两种定义方式:
                1. new RegExp("^[a-zA-Z][a-zA-Z0-9_]{5,11}$")
                2. /new RegExp("^[a-zA-Z][a-zA-Z0-9_]{5,11}$")/
            2. 匹配模式
                1. g 全局
                2. i 忽略大小写
            3. 坑
                1. 正则表达式中间不能加空格
                2. .test() --> .test(undefined) --> .test("undefined")
                3. 全局模式下会有一个lastIndex属性
    
    3. 今日作业
        1. 把博客上Date的小练习写完 http://www.cnblogs.com/liwenzhou/p/8004649.html
        2. 整理博客
        3. Python复习  *****
        
    
        
  • 相关阅读:
    mysql5.7.26做主从复制配置
    linux编译安装mysql5.7
    suse清除kthrotlds木马病毒
    iptables 常用命令
    抓包工具fiddler下载配置(二):浏览器设置代理
    抓包工具fiddler下载配置(三):手机设置代理
    抓包工具fiddler下载配置(一):下载/安装&信任证书
    如何录制视频生成GIF动态图?
    安装第三方包&查看python版本/第三方包版本
    python3项目打包成exe可执行程序
  • 原文地址:https://www.cnblogs.com/zhen1996/p/9513930.html
Copyright © 2020-2023  润新知