A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© dasini 初级黑马   /  2019-10-17 18:43  /  988 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

 通过这段js学习,我们不仅学到了丰富的知识,还进一步提高了业务素质,下面我从以下几个个方面谈谈我对本阶
段学习的心得:
一、基础很重要

谁都想掌握高端大气的技术,但是我觉得没有一个扎实的基础,我认为一切高阶技术对我来讲都是过眼云烟,要成为一名及格的前端工程师,必须把基础打扎实了。我也想展翅高飞,但前提我必须练就一双会飞的翅膀。
上学习流程和基础知识点
A.变量
变量名可以任意取名,但要遵循命名规则:
1.变量必须使用字母、下划线(_)或者美元符($)开始。
2.然后可以使用任意多个英文字母、数字、下划线(_)或者美元符($)组成。
3.不能使用JavaScript关键词与JavaScript保留字。
B.函数
function定义函数的关键字。
"函数名"你为函数取的名字。
"函数代码"替换为完成特定功能的代码。
第四种:输出HTML标签,并起作用,标签使用 " " 括起来。
一般建议放在最后,在页面渲染结束后再执行js脚本加载,因为js加载常常会遇到阻塞的问题,不能因为js的阻塞而影响页面渲染效果。
当然不同情况有不同的处理,比如进行页面显示初始化的js必须放在head里面,因为初始化都要求提前进行(如给页面body设置css等);而如果是通过事件调用执行的function那么对位置没什么要求的。

C.输入输出
第一种: 输出内容用 " " 括起,直接输出 " " 号内的内容。
第二种: 通过变量,输出变量的内容
第三种: 输出多项内容,内容之间用 +号 连接。
二、提前预习相关知识,js很多知识c语言都有系统的提到,容易形成知识体系
三、难点:1.预解析
js解析过程
        一、语法检查
                词法分析
                        分解为词法单元
                语法分析
                        将词法单元转换成抽象语法树(AST)
        二、运行
                1.预编译/解析
                        将生成AST复制到当前执行的上下文中。对当前AST中的变量声明、函数声明及函数形参进行属性填充
                        a.声明提前
                                js预解析会把当前正在解析的文件中的所有var 和function声明的变量在内存中进行提前声明或者定义
                                        var
                                                第一步:在内存中开辟了一个空间:函数名;如果当前环境下已经有了同名的空间,不在开辟空间
                                                第二步:将函数名和函数体结合
                                        function
                                                第一步:在内存中开辟了一个空间 函数名, 如果当前环境下已经有了同名的这个空间(不再开辟了)
                                                第二步: 将这个函数名与函数体做了一个结合
                         b.执行
                                JavaScript逐行读取并运行代码
                          案列分析
                                  无参
                                  有参
                                         先赋值,后预解析
                                          当变量名与函数名相同的情况:产生覆盖
                              2.对象的创建

                              a.创建
                               var star = {
                               name : 'pink',
                               age : 18,
                               sex : '男',
                               sayHi : function(){
                               alert('大家好啊~');
                                }
                              };
                            1.字面量
                               创建
                               var star = {
                               name : 'pink',
                               age : 18,
                               sex : '男',
                               sayHi : function(){
                                alert('大家好啊~');
                          }
                               };
                              调用
                                  1.点语法
                                        obj.age
                                  2.关联数组
                                        obj['age'];
                                  3.方法调用
                                        obj.方法名()                  
                              2.new
                                   创建
                                   var andy = new Object();
                                   andy.name = 'pink';
                                    andy.age = 18;
                                     andy.sex = '男';
                                    andy.sayHi = function(){
                                            alert('大家好啊~');
                                     }
                                     调用
                                       cindy.name;
                                       cindy['name'];
                                       cindy.sayHi();
                                3.构造函数
                                           创建
                                                 function 构造函数名(参数){
                                                   this.属性名=属性值;
                                                  this.方法名=function(){}
                                                  }
                                          构造函数实例化
                                                     var p =new 构造函数名();
                                         调用
                                                 new 构造函数名();
                                                 调用函数返回的是一个对象
                                                p.属性名
                                                p['属性名']
                                                  p.方法名()


0 个回复

您需要登录后才可以回帖 登录 | 加入黑马