首页 > 代码库 > 菜鸟学习Javascript20170116

菜鸟学习Javascript20170116

9.流程控制

顺序结构

普通的一行行执行代码

 条件结构--分支结构--选择结构

         1.单路分支

              If(条件){  条件成立时执行码     }

        2.双路分支

           If(条件){ 

                       条件成立时执行的代码

                  }

            else{

                   条件不成立时执行的代码

                 }

        3.多路分支

           用于范围

        if(条件1)

                 { 条件1成立时执行的代码}

         else  if(条件2)

                  { 条件2成立时执行的代码}

                   --- 

          else  if(条件 n)

                  { 条件n成立时执行的代码}else{ 条件1、2至n不成立时执行的代码}

       单个匹配

       switch(表达式)

           {

              case值1:执行代码块 1break;

              case值2:执行代码块 2break;

              ...

              case值n:执行代码块 nbreak;

             default:与 case值1 、 case值2...case值n 不同时执行的代码

       }

      4.嵌套分支

           If(){

                     If(){

                               Switch(){

                                                }

                                   }

                        }

     循环结构

       While()

                 while(判断条件){    循环语句 }

        Do-while()

                do{    循环语句 }while(判断条件) 

       For()

             for  (初始化变量;循环条件;循环迭代)

                   {        循环语句  }

              js中for循环用的最多

            For(var i=1;i<=9; i++){

             For(var j =1; j<=i; j++)

                   {

                             Document.write(j+”x”+i+”=”+(j*i)+””+””)

                   }

              Document.write(“<br>”);

       }

 

10.函数

    Javascript中的函数。

    函数:是一段完成“指定功能”的已经“命名”的代码段。

    函数只用“调用”才能使用到,调用,通过名称(可以在声明之前,也可以在声明之后)【可以重复调用】。

 

    或者

    function 函数名()

    {

    函数体;

    }

        

    function text[函数名]a,b,c,d,参数5,{

      功能段(一条,活多条)

      Return

    }

    例子function add(x,y){

    Sum = x + y;

    Document.write(sunm);

    }

     

    add(4,5);

     

  

    text();【函数调用,引号不能省】

    1.函数名

    2.参数:根据需要使用参数

    3.函数体(功能)

    4.返回值(可选)

     

    函数名不加()时,这个函数名就代表整个这个函数

     

    回调函数 ,声明

 

        使用情况:

        1.函数的作用 -- 决定我去不去使用

        2.函数的参数 --决定我怎么用

        3.返回值     --决定我使用后如何处理

11.函数默认值设置和内置函数

变量

全局变量:在函数外面声明的变量。

局部变量:在函数内部声明的变量,只有在函数内部使用,函数结束失效。

初始化默认参数

 

           <script>

function text(a,b,c)

a = a ? a : 1;//如果a=a,则输出a,不等于输出1

b = b ? b : 2;

c = c ? c : 3;

 

alert(a+","+b+","+c);

}

text();//函数调用

</script>

函数参数初始化

通过arguments改变参数个数

 

          <script>

function canshubutong(a,b){

alert(arguments.length);

alert(arguments[3]);

}

canshubutong(1,2,4,6);

</script>

arguments改变参数

不管默认几个参数,调用函数愿意输出几个就几个,arguments就是这么一个任性的存在。

内置函数

parseInt() 函数可解析一个字符串,并返回一个整数。ps(内置函数很多,只是举例一个)

变量

全局变量:在函数外面声明的变量。

局部变量:在函数内部声明的变量,只有在函数内部使用,函数结束失效。

12.javascript对象

    1.基于对象的操作方式(面向对象封装、继承、多态)

    2.将相关的操作使用一个对象完成,看作是一个整体

    Javascript  

               

     字符串对象

      数学对象

      数组

      时间对象

     

    对象中存的内容?

      一。属性(变量)

      二。方法(函数)

     都是和这个对象相关的

     

    1.声明对象

    2.使用对象

    3.使用系统对象

    步骤 1.找到对象

         2.实例化对象

         3.使用对象

    对象实例.属性 (取值 ,赋值)

    对象实例[属性名]

    对象实例.方法

 

    系统内置对象 

    自定义对象 

    和对象有关的一些操作

    遍历对象

    

    遍历对象两个方式

    For(变量 in 对象){

    }

     

    With(对象){

       所有方法如果不加对象都是 括号对象的方法

    }

    群组讨论给出理解:

     

    number,string,boolean,undefined,null五种基本数据类型和Object复杂数据类型(基本引用类型),
基本类型不是对象,而他们具备一些方法属性,是因为在访问这个基本类型时后台自动创建了一个对应的基本包装类型的对象,在代码自行完立即销毁,
引用类型一直存在于当前作用域,基本包装类型只存在一行代码的执行瞬间,然后立即被销毁
Object / Array / Function / Date / RegExp / Error / Map / Set …引用类型
Object基本引用类型,Array、Function等都是Object的实例

     

    提升:

    衍生点:typeof a(判断a的数据类型) a instanceof b(判断a是否是b的实例) a.constructor(获取a的构造函数)

 

13.Javascript内置对象应用

Math 静态对象,不用new

常见用方法:取上 ceil()

            随机random()

            割舍floor()

            四舍五入 round()

            最大maxx,y

            最小min(x,y)

 

正则表达式对象:

            方式一:re  =  //

            方式二:re  = new RegExp();

 

            例子

            Var   zz = /^a/i;

            Var   zz = new RegExp(“^a,i”)

            Alert(typeof(xx));

 

14.数组的声明与应用

. 数组的作用

           只要是批量的数据都需要使用数组声明

 

二.如何声明数组

           1.快速声明数组

 

            Var 数组名字 = [元素1,元素2,元素3,元素……]

            Var   name = [zhangsan,lisi,wangwu];

            Var  arrs = [[aaa,bbb,ccc],[1,2,3,4],];

 

            2. 使用Array对象

Var arr =new  Array(“元素1”,“元素2”);

 

三.遍历数组

 

 

四.数组的处理{内置处理方法}

sort()对数组的元素进行排序

 

   var  arrary = [1,9,4,3,6,8,2,7,0];


    arrary.sort();//sort(方式是排序,而且是数字个数相等的排序)

    /*倒叙排列*/

    arrary.sort(function(a,b){

    if(a > b){

    return -1;

    }

    else if(a==b){

    return 0;

    }

    else{

    return 1;

    }

    

    })

    

    document.write(arrary);

 

    还有 push()向数组的末尾添加一个或更多元素,并返回新的长度。

     unshift() 向数组的开头添加一个或更多元素,并返回新的长度。

     shift()删除并返回数组的第一个元素

         join()    把数组的所有元素放入一个字符串。元素通过指定的分隔符进行分隔

15. DOM操作

 作用

      DOMDocument Object Model

      1.document 文档  HTMl XML文件

        标记语言(标签似的)

        <body>

              <div>

                    <a>gaga</a>

              </div>

        </body>

      2.Object 对象(HTML元素 转成的对象(js对象))

           注意:如果使用js操作HTML文档,就需要选中HTML文档结构转成JS对象

             a。操作属性

             B。操作内容

                   innerTextIEtextContent(火狐)

                   innerHTML

                   outeText

                   outHTML

                 表单

                     Value  例如 input标签和textare

             C。操作样式

                   aobj.style.backgroundColor = red;

                   aobj.style.fontSize = 75px;

                 

                   ClassName

                   aobj.className = text;

                   aobj.className+=  demo;

 

 

                   利用for in 遍历所有标签属性和方法

 

                   Var pro = “”;

                   For ( pro in 对象名)

                    {

                      Document.write(a.+pro+=+aobj[pro]+<br>);

                    }

                    

          有了以上三点的操作之前先转成对象。

 

          转成对象的两种形式:

              1.标记名(多个):id(唯一) ,name(多个)。

              Document 中的三个方法

              

              Var  objs = document.getEleMentsByTagName(div);

              Var  objs = document.getEleMentById(one);

              Var  objs = document.getEleMentByName(two);

 

              2.通过数组

 

              Document.all = [object]

                    Document.appplets = [object]

                    Document.embeds

                    Document.script

                    Documnet.forms

                    Document.images

                    Doucment.anchors

                    doucment.styleSheets

                    Doucment.links

 

 

                    Document.body

                    Document.frames

                    Document.title

 

             数字访问 7中方式

                Document.forms[1]                 

                Document.forms[名字]

                Document.forms.item[1]

                Document.forms.item(名字)

                Document.forms.名字

                Document.名字

                Document[名字]

 

                中括号[ ] 和 点 . 相当于 (……的)

                

                      

16. DOM操作 之model

HTML DOM 中,所有事物都是节点。DOM 是被视为节点树的 HTML。

 一、讲文档想成一个倒数,每一个部分(元素,内容,属性,注释)都是一节点。

 二、只要知道一个节点,按照关系找到其他节点

       父节点                       parentNode

       子节点(第一个,最后一个)     childNodes        firstChild           lastCHild

       同胞节点(上一个 下一个)    nextSibling        previousSibling

        

      每个节点只有一个父节点多个子节点

三、找到节点,节点类型nodeType,节点名nodeName,节点值nodeValue

 

      每个节点都拥有包含着关于节点某些信息的属性。

 

      nodeName 属性含有节点的名称。

      元素节点的nodeName是标签名称

      属性节点的nodeName是属性名称

      文本节点的nodeName永远是#text

      文档节点的nodeName永远是#document

 

     nodeType 属性可返回节点的类型

 

元素             返回值 1

属性               : 2

文本                      3

注释                      8

文档                      9

 

 

可以在一个文档流中

  1。创建节点

     document.createElement(img);

     appendChild();

     insertBefore();

  2。添加到文档流中

  3。删除节点

     removeChild();


本文出自 “前端菜鸟学习之路” 博客,请务必保留此出处http://ls123.blog.51cto.com/6414296/1892100

菜鸟学习Javascript20170116