zoukankan      html  css  js  c++  java
  • JS----函数

    函数:函数代表这一个功能的模块
     函数特征

    1 它只定义一次,但可能被执行或者调用任意次数
    2 函数是不会主动运行的,只有被调用时才会执行
    3 函数的分类:系统函数、自定义函数

    系统函数:

    document.write();
    alert()
    。。。

    自定义函数

    1 函数的定义:
    function 函数名([形参1,形参2...]){
                  函数体;
                 [return;]
    }
    a function:关键字,使用该关键字来定义或者声明一个函数,函数都是从function开始的
    b 函数名:函数名是必须的,是给函数命名,命名规则跟变量命名规则一样
    c ():其中包含0个或者多个由逗号隔开的形参名称
    d {}:其中包含了函数体
    e 函数体:具体实现功能的代码块,函数体由0条或多条语句构成,一旦调用函数,函数体就会被执行
    f 形参:可以有形参,也可以没有形参。如果函数在实现自身功能的过程中,需要外部传值时,函数就需要形参,
    反之就不需要。形参就是用来接收外部传真的
    g return: 1》立即结束函数 2》可以返回值

    自定义函数分类

    1 无参无返回值
    2 有参无返回值
    3 无参有返回值
    4 又参有返回值

     函数的调用

    1 无参数的调用:函数名();
    2 有参数的调用:函数名(实参1,实参2,...);
    3 参数:形参和实参
    形参:定义函数的时候---相当于在函数中定义的变量
    实参:在函数调用的时候----调用函数时传入的具体值
    对应:形参和实参要一一对应,个数、数据类型都必须要一致
    函数在调用的时候,将会把相对应的实参传递给函数的形参,这个时候形参获取实参去参与运算

    五 ES中并未指定函数形参的类型,函数调用也未对传入的实参值做任何的类型检查,在必要的时候
    会进行类型转换。但是实参的值和形参的值保持同步,并且ES中所有参数传递的都是值

    全局变量和局部变量

    全局变量:是指在函数体外声明的变量,在js代码中的任何地方都有意义
    局部变量:是指在函数体内声明的变量,局部变量只在当前函数中有意义
    1 全局变量和局部变量的特性
    a 在函数的外面不能在没有调用函数的情况下访问函数里面的变量,不管是全局变量和局部变量
    b 局部变量的优先级高于全局变量
    c #如果在函数内定义的变量的前面没有加var这个关键字,那么这个变量就是全局变量#重点
    d 函数的参数是局部变量,他们只能在函体内有定义
    e 函数也可以嵌套函数,外层函数不能访问内层函数里面的变量

    ***************************************************
    基本数据类型:string number boolean null undefined object
    一 object(对象):数据和功能的集合。也可以理解成是属性与功能的集合

    属性:有什么---就是通过数据来描述的
    功能:能做什么---就是通过函数来描述的(方法)

    只有对象才有属性和方法
    比如数组:var arr=new Array(5); arr.length
    1 如何来获取对象的属性

    对象.属性名
    var arr=new Array(5);
    console.log(arr.length);//获取数组的长度,获取到的这个数据我们叫属性值

    2 如何来调用对象的方法

    对象.方法名();
    document.write("hehe");
    window.alert();
    function tst(){
    console.log(111);
    }
    window.tst();
    var n=10;
    console.log(window.n);//10

    3 只要加了()就是对象对象的方法,没有()就是对象的属性
    二 对象的分类

    内置对象:Array Function String Date Math RegExp...,这些都是ES规范定义的对象
    宿主对象:DOM(document) BOM(window)
    自定义对象:是由运行中的js代码创建的对象

    三 字符串对象(String)

    1 String.length:获取字符串对象的长度
    2 ASCII码
        a-z:97---122
        A-Z:65---90
        0-9:48---57
           a String.charCodeAt(字符位置):返回一个字符串某个位置上的字符的ASCII码
           b (String).fromCharCode(ASCII码):返回当前ASCII码所对应的字符
    3 String.charAt(index):从0开始到length-1结束,获取某个位置上字符,index---索引
    4 String.lastIndexOf("子字符串"):在一个字符串对象中去查找一个子字符串的位置,如果没有就返回-1,如果有返回的是最后一个子字符串的位置
    5 String.indexOf("子字符串"):在一个字符串对象中去查找一个子字符串的位置,如果没有就返回-1,如果有返回的是第一个子字符串的位置
    6 String.substring(start[,end]):截取字符串的一段子字符串,从start开始,到end结束,但是不包括end
    7 String.replace("子字符串","替换后的子字符串"):在一个字符串中去查找子字符串,然后替换成另一个字符串
    8 String.split("分割符"):将一个字符串按照分割符进行分割,返回的是一个字符串数组
    9 String.toLowerCase():将字符串全部转换为小写
    10 String.toUpperCase():将字符串全部转换为大写
  • 相关阅读:
    NYOJ-括号配对问题--------待解决,RE
    NYOJ-小猴子下落
    UVA401
    UVA11059
    生成1-N的排列
    C++ STL, next_permutation用法。
    C++ STL, set用法。 待更新zzzzz
    C++ STL, sort用法。
    C++中getline的用法
    TCP系列34—窗口管理&流控—8、缓存自动调整
  • 原文地址:https://www.cnblogs.com/liaohongwei/p/7631469.html
Copyright © 2011-2022 走看看