自学编程步骤

步骤/语言 JS python php c c++
了解背景知识

1、相关知识:

    交互:用户操作,程序处理用户的操作,返回处理结果

    js:专门编写交互的程序语言

2、历史:

1995年,Nescape:Navigator浏览器,由于当时(如日期验证12月32号,这个小事都需要发到服务器验证,然后又等发回来,一个操作一个来回,服务器接待不过来的而且当时网络很差10k/s),于是网景公司提出说应该有一种客户端程序语言:LiveScript,同年java 出现(write once run anywhere迷倒了网景公司上层)直到现在前端任何一种语言都不能做到一次编写处处执行(比如nth-child ie浏览器就不行),在前端任何时候都要考虑兼容性;为了赶时髦,把LiveScript改名为javascript于是委派布兰登.艾奇(Brendan Eich),10天时间,像极了java但一定要比Java简单.由于作者负气加赶工写出了js,但是问题相当多。由于当时navigaror很出名,js乘着此浏览器的东风传遍了世界,虽然很多问题,但由于当时就这一种前端脚本,大家只好硬着头皮使用直到现在

1996:javaScript1.1-->ECMA-->ECMAScript标准(宋江被招安,成为正规军,否则始终是草寇)

            同年Microsoft(要不是因为当年微软捣乱,js也不至于成为现在这样):做个人操作系统,一个windows卖一台电脑,它把ie嵌入的操作系统中,称也支持ECMAScript-->Jscript

    ECMAScript               JacaScript                   Jscript

    ECMAScript:标准、规定(菜谱)

     JacaScript  :netcape按照标准实现的JavaScript语言

    Jscript:微软遵照  ECMAScript  标准实现的自己的语言

    两家竞争各加各的东西,导致程序员不得不写两套代码

1998:W3C:

    DOM:基于ES标准制定的专门操作网页内容的API(基本实现一次代码处处执行)

    API:浏览器已经实现的,开发人员直接使用的编程接口

BOM:专门操作浏览器窗口的API

        没有标准,各浏览器厂商自行定义

所以大部分浏览器兼容在BOM上

3、组成部分:

                    1、 ECMAscript(javascript核心语法)

                    2、文档对象模型 (DOM)---专门操作网页内容的API

                    3、浏览器对象模型(BOM)---专门操作浏览器窗口的API

4、基本特点:1、解释性语言:

                        2、弱类型语言:

                        3、基于对象:

5、用途:客户端

                1、客户端数据计算(比如购物车数量,总价等等)

                2、表单输入验证(比如规定输入字符个数)

                3、浏览器事件的触发和处理(js绝大对数正式的功能几乎都是被事件触发的)

                4、网页特殊效果的制作(js,bom,dom可以对网页上一切内容任何位置做任何你想要的操作)----(只有想不到没有做不到----拼的是想法和创意)

                5、服务器的异步数据提交

6、

      

历史:

现状:

特点:

应用领域:

   
搭建环境

1、运行的相关知识:浏览器包含两个小软件

                                   内容排版引擎+js解释引擎

        内容排版引擎:专门解析html和渲染css的软件

        js解释引擎:专门解释,执行js程序的软件

        解释执行(js、html、css):默认从上到下,读一行,    执 行 一行,后读到的相同内容会覆盖先读到的

       脚本:不需要预编译,边解释边执行的程序

                  不像java那样需要先编译,查错

2如何编写和调试:

    js脚本程序:就是普通文本,editplus就可以编写

    运行js脚本:2种:

        1、独立安装的js解释器中:Node.js 

        2、浏览器的js解释器中:3处

            1、浏览器的控制台中:console

                (使用)什么东西的什么功能

                                console.log(" ")

              常用操作:

                再调出前边执行过的语句,向上箭头

                调出当前语句后边执行过的语句:向下箭头

                清屏:

                编写多行:shift+回车

            2、在网页中编写js:2处

                1、在<script>元素中:页面中专门编写js程序的区域

                随页面加载过程而解释执行

                可以在任意位置出现任意个

                想页面中输出一句话,

                    使用页面的输出功能:

                     document.write()直接在body元素中写入html

                在当前窗口,弹出警告框,显示信息:

                使用 窗口的警告功能:

                    [window.]alert("xxx")

                    alert一次,弹一次框,每个框都会阻断浏览器的加载和程序的执行过程

                2、在元素的事件处理函数中:仅能编写少量代码

                    事件:浏览器自动或手动触发的元素状态改变

                    事件处理函数:on事件名

                                            本质是元素的一个属性

                                             属性值是js语句

                    执行时机:只有事件触发,才执行;

            3、使用外部.js文件,单独存储js程序

                1、创建并编写js文件

                2、在页面中引入js文件:<script src=" url"></script>

    调试js程序:都是在console中

        bug:程序中的错误

        debug:找出错误,并解决错误的过程

        如果一个script中发生错误不会影响其他script的执行,只会影响本script中,出错之后的代码

        控制台中会包含重要错误信息:

            错误类型:错误原因              错误的位置链接

       
变量和常量

1、***变量:内存中存储*一个*数据的存储空间,再起一个名字

 何时使用:程序中反复使用的数据,都要先保存在变量中,在参与运算

如何使用:声明 赋值 取值

    1、声明:在内存中创建一个新变量

        如何声明:var 变量名;

                仅声明但暂未赋值,默认值为undefined

                变量名:1、不能以数字开头,仅能包含母,数字和下划线

                              2、不能用保留字,js中已经预先

                                    使用的关键字;比如name X

                              3、见名知意

                              4、驼峰命名:第一个单词首字母

                                小写,之后每个单词首字母大写

    2、赋值:

            *对已经包含值的变量赋新值,则新值会替换旧值

        建议:1、声明的同时,初始化变量的值

                    var 变量名=值;

3、取值:只要使用变量名,在运行时,会被自动替换为变量中的值

        

                                

       
数据类型          
运算符          
逻辑结构          
通用小程序          
函数和对象          
第三方库和框架          
实用小项目          

猜你喜欢

转载自blog.csdn.net/pingjiali/article/details/80818542