03 JAVASCRIPT BASIC概述、基础语法、变量和常量以及数据类型

1、Javascript概述
2、Javascript基础语法
3、变量和常量(重点)
4、数据类型
========================================JS概述==================================================
1、JS概述
    1、什么是JS
        JS是一种运行于JS解释器/引擎中的解释型脚本语言
        编译型语言:程序在运行前会进行编译(所有的),有问题是不会让运行的,如:C,C++
        解释型语言:运行之前不会编译,直接执行,出错则停止(一行一行扫描,出错就停止)

        JS解释器/引擎:是JS脚本的运行环境
            1、独立安装的JS解释器(NodeJS)
            2、嵌入在浏览器内核中的JS解释器
        PC,平板,手机,电视 ... 全部都支持JS
    2、JS的发展史
        1、1992年 Nombas 为自己的软件开发了一款脚本语言C Minus Minus(C--)后更名为 ScriptEase,可以嵌入在网页中。
        2、1995年 Netscape为自己的Navigator2.0 开发了另一种客户端脚本语言-LiveScript,为了借助Java势头(与Java毫无关系),所以更名为 Javascript
        3、1996年Microsoft为了进军浏览器市场,在IE3.0 中 发布了Javascript的克隆版,称为JScript
        4、1997年,Javascript1.1作为草案提交给了ECMA(欧洲计算机制造商联合会),Javascript的核心 被更名成 ECMAScript

        完整的JS语言是由三部分组成:
            1、核心(ECMAScript)
            2、文档对象模型(DOM)
                Document Object Model
                让JS有能力与页面进行对话(操作页面内容)
            3、浏览器对象模型(BOM)
                Browser Object Mode
                让JS有能力与浏览器进行对话(操作浏览器)

        JS语言的特点和用途
        1、特点
            1、任何文本工具都可以开发JS
            2、无需编译,直接由JS引擎来执行
            3、弱类型语言
                由数据来决定数据类型
            4、面向对象的语言
        2、用于
            1、客户端的JS
                1、客户端数据计算
                2、表单输入验证
                3、浏览器事件的触发和处理
                4、网页特效制作(如:网页轮播效果)
                5、服务器端的异步(同一时间点上可以做多个事儿,用户输入密码时网页会验证用户名)数据提交(AJAX)
            2、服务器端的JS
                1、分布式运算
                2、实时服务器
                3、窗口应用
                4、网络应用

========================================JS基础语法============================================
2、JS基础语法
    1、使用JS(重点)
        1、浏览器内核(区分浏览器,主要看内核)
            内核作用:负责页面内容的渲染,造成页面兼容性的主要原因
            组成:
                1、内容排版引擎-解析HTML/CSS
                2、脚本解释引擎-解析JS
            浏览器      内核名    排版引擎         脚本引擎
            IE             Trident    -(自带的)     Chakra
            Firefox     Gecko           -                 Monkey
            Safari       Webkit    Webcore          Nitro
            Chrome   Webkit    Webcore           V8(目前运行速度最快)
            Opera      Presto     -                       Carakan
            Opera      Webkit    Webcore          V8
            (2013~今)
        2、第一个JS程序
            1、搭建JS运行环境
                1、使用独立安装的JS解释器(NodeJS)
                    console.log("Hello World");
                2、使用浏览器内核中的JS解释器
                    1、直接在Console中输入脚本并执行
                    2、将JS脚本嵌入在html页面中执行(最常用)
                        1、html元素事件编写脚本
                            事件:onclick
                            <ANY onclick="脚本代码">
                        2、在 <script>元素中嵌入JS脚本
                            <script>
                                JS脚本
                            </script>

                            document.write("被排版引擎所解析的内容");
                        3、使用外部脚本文件编写JS脚本
                            1、创建一个  **.js 文件
                                在文件中编写JS脚本
                            2、在使用的页面上进行引用
                                <script src="js文件URL"></script>
    2、JS调试(重要)
        console -> consloe(单词写错)
        console -> Console(大小写)
        console.log("");--> console.log(“”);(中英文)

        1、代码错误
            解释型语言,若某行代码出现错误,解释器则终止此次执行。但不会影响后续块和后续的HTML执行

            <script></script>
    3、语法
        1、编写JS代码
            1、语句-会被JS解释器所执行的代码
                console.log();
                document.write();

                由表达式、关键字、运算符组成
                大小写敏感
                由分号或换行表示结束
            2、注释-不会被JS解释器所执行的内容
                单行注释://
                多行注释:/*   */

==============================================变量和常量========================================
3、变量和常量(重点)
    1、什么是变量
        问题:向银行存1000元钱,每年利率5%,求10年后的本息是多少钱?

        内存:保存计算机程序在运行过程中所需要用到的数据(临时存储)

扫描二维码关注公众号,回复: 2717498 查看本文章

        变量:内存中的一段存储空间,目的是为了临时的保存数据。
        值:保存在变量(内存空间)中的数据
        变量名:内存空间的别名,可以自定义
    2、变量的声明
        到内存中申请一段空间保存数据
        1、语法
            1、声明变量
                var 变量名;
            2、为变量赋值
                变量名=值;
            注意:
                声明时可以省略var关键字,省略之后变量就成了"全局变量",推荐不要省略var关键字
            ex:声明一个变量叫 age,保存数据 18
                var age;
                age=18;
            3、声明变量并直接赋值
                var 变量名=值;
                ex: var age=18;
            4、在一条语句中声明多个变量
                声明变量age1的值为18,age2的值为36,age3的值为50
                var age1=18;
                var age2=36;
                var age3=50;

                语法:
                    var 变量名1,变量名2=值,.......;
                ex:
                    var age1=18,age2,age3=50;
        2、变量名命名规范
            1、不允许使用JS关键字及保留关键字
            2、可以包含字母、数字、下划线(_)以及$
                var %name;   //错误,不允许出现%
            3、变量名不能以数字开头
                var 1=2; //错误,不能以数字开始
                var 1name;//错误
            4、变量名最好见名知意
                var a,b,c,d,e,f,g;
                var aa,ab,ac;
                //以上方式不推荐
                var stuName,stuAge;
                var xymc;
            5、可以采用"匈牙利命名法","驼峰命名法","下划线命名法"
                驼峰命名法:
                    如果变量名由一个单词组成,全小写
                    如果变量名由多个单词组合而成,第一个单词全小写,从第二个单词开始,每个单词的首字母变大写
                ex:
                    var age=15;
                    var stuAge;
    3、变量的使用
        1、未经初始化的变量
            声明了变量,但是没有被赋过值,值默认为 undefined(未定义)

            var userName;//定义变量,但未赋值
            console.log(userName);//undefined

            console.log("userName");//打印的为文本

            小习惯:
                声明变量时,字符串的话可以设置默认值为"",如果是数字的话,可以设置默认值为 0

        2、变量未被定义过,而被直接使用(必须得定义,可以不赋值)
            console.log(userName);
            语法错误!
        3、对变量值进行的存、取操作

            1、对变量进行存值操作-SET操作(将值赋给变量)
                运算符:=(赋值运算符)
                如果变量名出现在 = 的左边,就是赋值操作
                ex:
                    var userName;
                    userName="三丰.张";

                    var userAge=28;
                    userAge=29;
            2、对变量进行取值操作-GET操作
                只要变量名称没有出现在=的左边,那么就都是取值操作。
                var stuName="张三丰";//为stuName赋值
                console.log(stuName);//取值

                var newName=stuName;
                以上操作,对于stuName,是取值操作
                对于newName,是存值操作

                document.write(stuName);
                window.alert(stuName);

                var num1 = 10;
                var num2 = 20;
                var sum = num1 + num2;
    4、运算符-算术运算符
        +,-,*,/,%(模)
        % : 取余数
            5%2=1
            6%2=0
            适用场合:
                1、判断奇偶性和倍数
                    ex:15 是 3 的倍数吗 ?
                        15%3=0 :余数为0,所以15是3的倍数
                        25%50 = 25
                2、获取某数字的最后几位
                    ex:想获取1234的最后一位数字
                        1234%10 : 获取最后一位
                        1234%100 : 获取最后2位
        + :
            1、数字运算
                如果 + 两边的数据 都是数字类型,则进行的就是 加法操作(紧扣定义)
                var num1 = 15;
                var num2 = 18;
                var sum=num1+num2;

            2、字符连接
                如果 +两边有一个是字符串的话,则进行的就是 字符连接 操作
                var stuName="三丰.张";
                var stuAge=18;
                var result=stuName+stuAge;//三丰.张18

                var num1 = "15";//字符串而非数字
                var num2 = "18";//字符串而非数字
                var sum = num1+num2;

                var num1 = 15;
                var num2 = 18;
                var str = "Hello";
                //var result=num1+num2+str;//33Hello
                var result=str+num1+num2;//Hello1518
    5、常量的声明和使用
        1、什么是常量
            在程序中,一旦声明,在运行过程中就不允许被修改的数据,称之为常量

            常量在程序中表示的是常理型的数据,如:PI
        2、语法
            const 常量名=值;
            注意:常量名一般采用全大写的模式

            ex:
                1、声明一个常量,来表示PI的值为3.14
                    const PI=3.14;
                2、声明一个常量,来表示一周有7天
                    const DAYOFWEEK=7;
        3、练习
            定义一个变量(r),来表示一个圆的半径。
            通过JS来计算该圆的周长(l),以及面积(s)
            l = 2πr;
            s = πrr;
            打印:
                半径为 .. 的圆的周长是:xxx
                半径为 .. 的圆的面积为:xxx

============================================数据类型==========================================
4、数据类型
    8bit(位)=1byte(字节)(位就是1/0)
    1024byte = 1kb(千字节)
    1024kb = 1MB(兆字节)
    1024MB = 1GB
    1024GB = 1TB

    问题:保存一个数字(25)到内存中,占据多大的空间呢???

    1、什么是数据类型
        保存在内存中的数据的类型,数据类型决定了数据在内存中占据多大的空间
    2、数据类型分类
        1、基本数据类型
            1、number类型
                数字类型:可以表示32位(即4字节)的整数,也可以表示64位(即8字节)的浮点数(小数)

                整数:
                    十进制:逢10进1
                    八进制:逢8进1
                        以0作为开始的数字都是八进制数字
                        var num = 010;
                    十六进制:逢16进1
                        0-9,A-F
                        以0x作为开始的数字都是十六进制
                小数:
                    使用小数点记录数据:12.34
                    使用指数记录数据:3.14e10
            2、string类型
                字符串类型:可以表示一系列的文本字符数据
                由Unicode(万国码)字符(每个字符占两位)、数字、标点符号组成

                查看字符的Unicode编码
                字符.charCodeAt();

                字符 "张",在内存中的存储形式 :0101111100100000

               

                要求:字符串使用过程中,必须用""或''引起来
                var num1 = 1000; //数字,4字节
                var num2 = 1000;
                num+num2 : 2000
                var str1 = "1000";//字符串,8字节
                var str2 = "1000";
                str1+str2 : 10001000

                转义字符:
                    \n : 换行
                    \r : 回车(非换行,接收指令)
                    \t : 制表符
                    \' : '
                    \" : "
                    \\ : \

            3、boolean类型
                布尔类型:来表示结果的真或假,肯定或否定
                该类型仅有两个值:
                    true 表示真(肯定)
                    false 表示假(否定)
                ex:
                    var isBig = true;
                    var isSmall = false;

                在实际运算中,true可以当成1做运算,false可以当成0做运算
            4、undefined
                语义:访问的数据不存在
                产生undefined的场合:
                1、声明变量未赋值
                2、访问的对象的属性不存在
        2、引用类型

猜你喜欢

转载自blog.csdn.net/Pony_18/article/details/81556969
今日推荐