了解javascript

javascript(交互)

 1.介绍

   是一种编程语言(基础知识 + 类库 + 第三方的东西),而且是一种弱类型语言

   组成:ECMAScript(基础语法) + DOM(文档对象模型) + BOM(浏览器对象模型)

         ECMAScript:定义变量、数据类型、流程语句、注释...

         DOM:浏览器提供js操作html的api(api:应用程序编程接口)

         BOM:浏览器提供js操作浏览器的api

 2.js的运行环境(宿主环境)

    浏览器(充当脚本语言、前端语言)

    nodejs(平台)  =>    采用谷歌的v8引擎(作为后端语言)

*3.js的特点

   (1)客户端代码,在客户机上执行(既可以作为前端脚本语言,还可以作为后台语言(取决于它运行的平台))

       1.JavaScript特殊的地方在于它也可以作为服务器端代码执行,但是需要搭建Node环境。node hello.js

       2.在浏览器上运行

   (2)解释性语言,不需要编译,直接由浏览器或者nodejs提供的js解释器去解析

   (3)弱类型语言

   (4) 从上往下顺序解析执行

 4.如何在html中使用js

 (1)使用script标签,将js代码写入标签(html和js没有分离)

 (2)定义一个后缀名为.js的文件,然后在html中使用script标签的src属性引入(html和js分离开来)

 5.注释(会被浏览器或者node平台忽略掉)

    单行注释

    //注释内容

    多行注释

    /*注释内容*/

    注释作用:(1)记录编程思路

              (2)便于代码的维护

              (3)增加代码量

6.关键字和保留字

  (1)关键字:js中具有特殊功能的词

        break    do      try     typeof
        case    else    new    var
        catch    finally    return    void
        continue    for    switch    while
        debugger    this    function    with
        default    if     throw    instanceof     
        delete     in

  (2)保留字:将来可能成为关键字

        abstract    enum    int        short
        boolean    export    interface        static
        byte    extends    long        super
        char    final    native        synchronized
        class    float    package        throws
        const    goto    private        transient
        debugger    double    implements    protected
        volatile    import    public

7.变量

 变量是用来保存值的容器,在js中变量是动态的,它可以保存任意数据类型,定义变量使用var关键字

 变量的使用:

    (1)定义变量

     var a

    (2)初始化变量

     a = 2

    (3)定义变量并且初始化

     var b = 2

     (4)定义多个变量

     var a = 1,b = 2,c = 3

变量名的命名规则:

  (1)变量名由字母,数字,下划线以及$组成。

  (2)不要使用下划线或者数字作为变量名的开头

  (3)变量名应该具有一定的意义,使用小驼峰命名规则   var userAgeTotal = "";

  (4)不要使用关键字或是保留字作为变量名

8.数据类型

(1)基本数据类型

Number          数字类型       1,2,3,1.1,2.3

nan             非数值

数值的范围:   最小值:Number.MIN_VALUE    5e-324

              最大值:Number.MAX_VALUE    1.7976931348623157e+308

检测数值的范围:isFinite()函数      超过最大值或者最小值     =>  flase

String          字符串(既可以使用单引号包起来,也可以使用双引号)    

               属性:length    用来检测字符串的长度

Boolean         布尔类型

                true

                flase

null            空的引用(null可以表示一个空对象的指针,一般我们不知道要保存成什么的时候,使用null站位)

undefined       未定义(未定义或者未初始化)

(2)引用数据类型(除了基本数据类型外的数据都叫引用数据)

  对象

  函数

  数组

  正则表达式

9.js变量在内存中的表现形式

      基本数据类型直接将值保存在栈区中

      引用数据类型将值保存在堆区中,将引用地址保存在栈区中,这个引用地址指向堆区中的内存空间

      值传递

        基本数据类型之间

        var a = 1

        var b = a

        a = 4

        b不会变

      引用传递

        引用数据类型之间

        var o = {name:'tom',age:12}

        var o1 = o

        o1.age = 15

        o:{
          name:'tom',
          age:15
        }

    10.操作符

      1)算数操作符

        +               1+2

        -               3-1

        *               2*3

        /               10/2

        %               5%2

      2)一元操作符

        递增递减操作符号
        
          ++

          --

          var a = 1

          a++(a--)            先赋值,再++(再--)

          ++a(--a)            先++(先--),再赋值

        赋值运算符

          =                     将等号右边的值赋值给等号左边的变量

          var a = 12

        加+

          +,将不是Number数据转化为Number类型

          -

            如果运用数值上时,该数值变为负数

            如果运用到非数值上时,使用+运算符的规则,然后变成负数

      3)比较运算符

        ===(全等)            既要数据类型相同,也要值相同,才会返回true

        ==  (相等)           只要值相同,就会返回true(隐式转换)

        >                     

        <                         

        >=

        <=

        !== (不全相等)

        !=(不想等)

      4)逻辑运算符

        逻辑与(并且) &&

          同真为真,有假则假

        逻辑或(或者) ||

          有真则真,同假则假

        非    !

          任何数据类型使用非运算符,都会返回一个布尔类型的值,先转化为布尔类型的值,然后取反

          Number  

              0      false

              1      true

          String

              非空字符串  true
              
              空字符串    false

          null           false

          undefined      false

        将任何数据类型转化为布尔类型,使用 !!

      5)三目运算符
      条件?语句1:语句2

    11.数据类型的转换

      其他数据类型转化为String

        1)toString()

          除了null和undefined,其他三种基本数据类型都有toString方法,

          如果这个值为number类型,那么toString可以接受一个参数(2、8、10、16),默认转化为十进制

        2)String() 包装器、转换器,其他任意基本数据类型

        3)拼接空字符串

      其他数据类型转化为布尔类型

        1)Boolean() 包装器

        2)使用两次逻辑非(!!)

      其他数据类型转化为数字类型

        1)Numder()      包装器、转换器

          如果转换的值是null,undefined,boolean,number

        2)parseInt()      将任意数据类型转化为Number(整数类型)

        3)parseFloat()      将任意数据类型转化为number(浮点型)

      注意

        加 + (m+n)

        当m、n都不为string、object的时候,先将m、n转化为number,然后进行计算

        当m、n有一个为string的时候,将m、n都转化为string,然后拼接

    12.流程控制语句

      分支语句

        if (条件) {

          代码块

        }
        else {

          代码块

        }

        if(条件) {

          代码块

        }else if(条件) {

          代码块

        }else {

          代码块

        }

        switch (gender) {
            case '男':
                console.log('男生');
                break;

            case '女':
                console.log('女生');
                break;

            default:
                console.log('不男不女')
        }

        每一个case里面都应该写一个break,最后一个case之后写一个default

      循环语句

        循环语句必须具有的三要素

          计数器、循环结束的条件、迭代器

        for

        while

        do while

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值