zoukankan      html  css  js  c++  java
  • php-JavaScript(1)

    JS=>javascript:基于浏览器的脚本语言

    Day1:变量,数据类型

    Day2:语句,循环

    Day3:函数

    Day4-day6:案例

    JS:javascript

    HTML和CSS:标记语言

    Javascript:编程语言

    变量:variable [ˈveəriəbl] [ˈveriəbl]

    语法:var 变量名=值(数据);

    变量:用来保存东西(数据)

    变量名:name=”假冰冰”,[冰冰=>bb=>2b]

    变量名注意:

    1)  变量名不能和系统内部关键字相同

    2)  变量名不能以数字开头

    3)  变量名里面,只能包括数字,字母,下划线

    4)  建议:大家用比较有意义的名字

    5)  建议:把var加上,为了让JS代码标准

    变量名:

    1)      abc_acb

    2)      __abc

    3)      ______(不建议使用)

    4)      123abc(错误)

    5)      Abc123

    Alert:弹出窗口(警告,测试)

    1)  警告显示

    2)  测试

    JS里面的语法注意:

    1)      在JS里面,所有的符号都必须是英文状态下的符号

    2)      JS里面,区分大小写

    3)      建议,在每一行的后面,都加上分号

    4)      建议,写js代码,每行表达每行的意思即可

    5)      在JS里面,

    Firebug的应用:

    1)      打开firebug

    2)      控制台

    数据类型:

    1)  数字(number),数字类型,通常表示数字,可以相运算

    2)  字符串(string),字符串类型,通常表示字母或者汉字,写字符串的时候,必须加上引号,那么在JS中,单引号和双引号都可以

    3)  布尔类型(Boolean,bool) 只有两个值,true(真),false(假)

    4)  空类型(null)表示没有值,空的

    5)  未定义类型(undefined)表示没有定义

    6)  复合数据类(arr,object)表示很多数据的集合

    课堂练习:

           要求大家,把上面的数据类型,都创建并且弹出查看

    注释:

           两种注释的方法:

                  1)//单行注释,在符号”//”后面所有的内容都是注释的内容

                  2)“/*内容*/“,在符号”/**/”里面所写的内容都是注释内容

    就是在代码上表明一些所写的代码,但是不会再浏览器上显示

           用注释表明每一段所写的内容

    运算符:

    1)  赋值运算符“=

    赋值运算符,表达的意思就是:把符号”=”右边的数据赋值给左边的

    2)  算数运算符”+,-,*(乘号),/(除号),%(取余),++,--”;

    %取余:得到两个数相除得到的余数

        

    ++代表的意思就是:自加1

    --代表的意思就是:自减1

    以上两个运算,如果参与到赋值运算里面的时候,那么这个时候有所改变

            ++的情况,如果说,var i=1;var j=i++,先把i赋值给j再运算i++;

                            如果说:var i=1;var j=++i,先自加,再赋值给j

                                --的情况,和++的情况相同,如果是i--,那么就是先赋值,再自减

                                                                      如果是--i,那么就是先自减,再赋值

    3)  逻辑运算符:符号”&&,||,!

    &&叫做逻辑与

            两个情况都满足的情况

    ||叫做逻辑或

            两种情况满足一种情况

    !非

            取反的意思

    4)  比较运算:符号(>(大于),<(小于),>=(大于等于),<=(小于等于),==(等于),!=(不等于),===(全等于),!==(不全等于))

    5)  复合赋值运算符

    +=-=*=/=

    Var i=2;i+=2;i=i+2

    Var j=2;j-=2;j=j-2

    Var n=2;n*=2;n=n*2

    Var m=2;m/=2;m=m/2

    字符串运算符:符号“+

             意思就是把左边和右边的数据,相连接起来

             什么时候会用到字符串运算符,当“+”左右两边(有一边就可以)有字符串的时候,就会用到字符串连接

    6) 位运算符:符号很多

    十进制

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    二进制

    1

    10

    11

    100

    101

    110

    111

    1000

    1001

    1010

    1011

    1100

    <<:按位左移:把数字的二进制同时向左移动,空出来的位置补0即可

    var i=9;

    var j = i<<2;应该是36;

    9的二进制

    0

    0

    0

    0

    1

    1*2的3次方(8)

    0

    0*2的2次方(0)

    0

    0*2的1次方(0)

    1

    1*2的0次方(1)

    左移两位

    0

    0

    1

    0

    0

    1

    0

    0

    结果

    2的5次方(32)

    0

    0

    2的2次方(4)

    0

    0

    1026=》1*10的3次方【得到的是千位数字】

               0*10的2次方【得到的是百位数字】

               2*10的1次方【得到的是十位数字】

               6*10的0次方【得到的是个位数字】

    &:按位与运算:把两个数(表达式)的二进制相比较,如果相同位数上的数都为1,那么为1否则,为0

    Var i=9;

    Var j=8;

    Var m = i&j;

    9的二进制

    0

    0

    0

    0

    1

    0

    0

    1

    8的二进制

    0

    0

    0

    0

    1

    0

    0

    0

    结果

    0

    0

    0

    0

    1

    0

    0

    0

    alert();和document.write();

           alert();弹出框,在弹出之后,点击就看不到,属于浏览器级别

           document.write(),在页面输出内容,属于网页级别

    运算符的优先级

    1)  如果说,一旦涉及到运算符比较多的情况,那么必须有个概念(运算符有优先级)

    2)  括号最优先。赋值最后

    求一元二次方程的根

    b*b-4ac>=0才有根

           如果说大于0那么有两个根(不相同)

           如果说等于0那么就有1个根

    传值:

    1)  赋值传值:把值赋值一份,给新的变量,两份数据,数据

        a)         简单数据,都是赋值传值

        b)         Number,string

    2)  引用传值:是表示的是同一份数据,地址

        a)         复杂数据,都是引用传值

        b)         Object

    语句:

    1) 流程控制之if语句

        格式:if(条件){//语句块}

      如果条件(小括号里面的)满足true。那么才会执行大括号里面的代码,如果条件不满足(false),那么不执行,注意:有可能代码不会执行

    if(今天下雨){

                  document.write(“带雨伞”);

    }

    2) 流程控制之if,else语句

        格式:if(条件){//语句}else{//语句}

      如果条件满足,就执行语句,如果不满足,就执行else语句注意:这个语句必定会被执行

    3) 流程控制之if,else if语句

        格式:if(条件1){//语句}else if(条件2){//语句}

      如果条件满足,就执行语句,如果不满足,就不会执行,注意:有可能不会执行

    4) 流程控制之混合形式

         格式:if(条件){//语句}else if(条件){//语句}else{//语句}

      如果条件满足,就执行语句,如果不满足,就直说else的语句注意:必定会有语句被执行

    5) 流程控制之switch语句

         格式:Switch(n//变量或者表达式){

                     Case 1

                         Document.write(“a”);//语句

                         Break;

                     Case 2

                         Document.write(“b”);

                         Break;

                     Case 3:

                          Document.write(“c”);

                          Break;

                     Default:

                            Document.write(“f”);

                  }

    如果说值和变量n相同,那么就会执行对应值的后边的语句,break就是跳出语句的意思

    6) 流程控制之while循环

      1. 循环变量的初始化

      2. 循环变量的改变

      3. 循环条件的判断

    格式:

    Var i=1;        【循环变量的初始化

    While(//表达式【循环条件的判断】){

            //循环体alert,documet.write,i++

                  i++;【循环变量的改变

       }

    如果表达式成立,那么就会执行循环体[大括号里面的代码]

    当表达式成立,就执行循环体,执行循环体之后,又会回到表达式判断的地方,继续判断表达式是否成立,如果成立,继续执行循环体,如果不成立,跳出循环【不执行循环】

    7) 流程控制之do,while循环

           Var i=1;【循环变量的初始化

          Do{//循环体

                i++;【循环变量的改变

            }while(【循环条件的判断】)

    先执行一次do里面的循环体,改变循环变量,判断条件是否成立,如果成立,那么继续执行do里面循环体

    8) 流程控制之for循环

           格式:

           for(var i=1【循环变量的初始化】;i<=100【循环条件的判断】;i++【循环变量的改变】){

                  //循环体

          }

    注意:3个必要条件之间都是分号“;”

    执行过程:

           循环变量初始化=》循环条件的判断(true)=》循环体=>循环变量的改变=》循环条件的判断(true)=》循环体=》循环变量的改变=》循环条件的判断(false)跳出循环

    函数:为了完成某个功能而定义的代码的集体

    语法:

           定义语法:    function 函数名(形式参数1形式参数2……){

                                //代码,这些代码叫做函数体

                                Renturn 某值;

             }

           调用语法:   函数名(实际参数1实际参数2……);

    注意:

           1)形式参数和实际参数必须是一 一对应

           2)函数调用的时候和定义的时候必须是相同的名字

           3)return的时候,只能是值

           4)形式参数和实际参数可以有很多个

    Return详解

     1)return返回某个值

     2)return可以返回true和fasle,值

     3)return就是返回的意思【return可以让函数停止不执行】

    函数名:

      1) 不能和系统关键字相同

      2) 让函数名有意义

    作用域:

      1) 全局变量:所有地方都能用的变量函数外部申明的变量

      2) 局部变量:在函数内部申明的变量就是局部变量

     注意:我们只关注局部变量

    Firebug的调试:

    查看函数的执行:

      1) 打开网页

      2) 刷新,点击到脚本

      3) 随意点击位置可以出现 断点

      4) 刷新(代表的意思是要执行这行代码,但是还没有执行)

      5) 执行相应的操作

    函数注意:

      1) 函数在写好之后不会立即执行,只有在调用的情况下才会执行

      2) 函数可以放到任意位置,可以吧函数写在调用之前,也可以写在调用之后

    系统内部函数:

    NaN:Not a number,表示不是数字    isNaN:是一个非数字 true      isfinite:测试一个数是否是无穷大

    parseInt();转化为整数

    parseFloat();转化为浮点数

    parseInt(12.3);//12

    parseInt(9.9);//9

    parseInt(6.2);//6

    递归函数:函数本身调用函数本身的这种形式,必须有个能够让函数停止继续调用的条件

    Function f1(){

             f1();

        }

    f1();

    数组:若干数据的集合

    数组的属性

           var len=arr.length

    如果保存到变量里面,这个时候变量里面保存的是数字,如果说直接把arr.length写到循环里面,循环的时候会在去arr.length找长度(个数)

    格式:var arr=[10,20,30];          数据:【10,20,30】

           =》下标:【0,1,2】

    数据

    10

    20

    30

    下标

    0

    1

    2

    var chengji=arr[0];//取值

    arr[0]=100;

    var chengji=10;

    数据

    96

    86

    88

    99

    87

    66

    下标

    0

    1

    2

    3

    4

    5

    案例:求平均数

    特别注意:

           Return是函数内部的

           Break是语句的

  • 相关阅读:
    python 元组列表合并
    python 将元组解析为多个参数
    python 元组切片
    python 元组元素反转
    python 删除元组元素
    Ubuntu 16.04 kinetic 编译指定包
    ubuntu16.04 kinetic 安装 robot-pose-publisher
    ubuntu 16.04 kinetic 安装rosbridge
    sudo: unable to resolve host myhostname: Connection timed out
    python 元组元素计数
  • 原文地址:https://www.cnblogs.com/heyunfeng/p/5612967.html
Copyright © 2011-2022 走看看