美文网首页
窥视 JavaScript 第五天

窥视 JavaScript 第五天

作者: 入院小杂 | 来源:发表于2018-09-25 20:02 被阅读0次
  1. 一个函数是实现某一个功能的,实现了没有怎么判断?计算1-100之间所有数字的和。
    var sum (){
    for(var i=1;i<101;i++){
        sum+=1;
    }
    
}
sum();
函数执行完成之后,内部的结果想要告诉函数的调用者。那么就要使用函数值,函数的  返回值只能有一个。
语法是在所有的函数内部的语句之后添加一条return语句。
想要返回什么就在reurn后面写什么。
任何调用这个函数的地方都可以会去到这个返回值。
  1. 函数申明的优先级
    如果一个表达式申明的函数与一个是哟个function关键字申明的函数具有相同的调用 方式。那么最终生效的永远是表达式申明的函数,也就是说表达式申明的函数优先级高。

  2. 不要在if以及所有判断里面申明函数。

  3. 函数的属性以及方法
    面向对象。函数也是一个对象。对象就是具有方法以及属性的一个个体。
    name属性:函数名。
    length属性:形参参数的个数。
    toString():函数字符串自己。
    this :表示函数的调用者

  4. 参数
    参数的默认值。有的参数并不是必须要传递的,没有传递时候可以设置一个默认的来执 行。这个时候就可以使用默认值语法。一般来说函数的在调用的时候传递的参数的个数 要和函数申明的时候申明的参数的个数要一直。如果某一个参数没有传递,那么实参与 形参的对应关系式从前向后的参数总是被先省略。

  5. 参数的传递方式
    值传递:

        var  a  =  10;
        b = a
        b = 11;
        a = ?    10
对于简单数据类型的参数传递使用的就是值传递。(数字,字符串,布尔值)。
var a  = 100;
    function s(m){
    console.log(m);
    console.log(a);
    m =  0;
    console.log(m);
    console.log(a);
    }
    s(a);
    console.log(a);
    console.log(m);

引用传递(地址传递):

    var zhangsan = {};//对象
    zhangsan.age = 18;
    zhangsan.height = 178;
    zhangsan.weight = 180;
    function s(b){
    b.age = 22;
    }
    s(zhangsan);
    console.log(zhangsan.age);
        
  1. arguments对象:
    参数对象,能够在函数的内部获取到所有传入的参数的集合。是一个类数组对象。
    出现原因:
  2. 如果传入的参数的个数不确定的。例如返回换入n个参数的最大值。
  3. 申明函数的时候参数的个数比调用函数的时候传染源的参数个数少。
  1. 函数分类
    系统函数,js自己定义好的函数
    自定义函数,用户自己定义的函数。
    匿名函数:没有名称的函数,这个函数只是定义的时候直接生效。
    立即函数(自执行函数):就是函数在定义的是时候自动调用一次。不能使用在函数关 键字申明的函数后面直接加上小括号不代表执行,因为JS的解析器认为function开始 的语句就是函数定义。
    表达式申明:可以使用表达式申明的函数后面加上小括号表示执行。
    其实对于js解析器来说只要不是function开始都可以实现自执行。
        (function  s (){}());
        (function (){})();

利用上面的这个自执行的特点,可以实现用户的一个局部作用域空间,这样可以防止变 量的污染。
其实对JS解析器来说只要不是使用function开始申明的函数都是可以加上小括号表示 自执行的。

    !function s (){}();
    ~function(){}();
    +function(){}();
    -function(){}();
  1. 回调函数
    就是在某一个地方(函数内部)根据有一个条件去调用其他函数。
    在不修改源代码的基础上事件新的功能。
    对修改封闭,对扩展开放。开放封闭原则。

  2. 递归函数
    在函数的内部自己调用自己实现某一个操作。递归函数是一定具有结束条件的,没有结 束条件就变成了死循环。

相关文章

  • 窥视 JavaScript 第五天

    一个函数是实现某一个功能的,实现了没有怎么判断?计算1-100之间所有数字的和。 函数申明的优先级如果一个表达式申...

  • 窥视 JavaScript 第三天

    数据类型转换 强制类型转换 parseInt:将数字或者字符串转化整形。 parseFloat:将数字或者字符串转...

  • 窥视 JavaScript 第四天

    innerHTML获取标签内部的所有内容,可以获取出标签里面的标签 innerText获取标签里面的内容,不获取标...

  • 窥视 JavaScript 第一天

    JS的理解基于事件,基于用户操作。 JS的组成三个部分: 网页的组成:HTML+css+JSEcmascript:...

  • 窥视 JavaScript 第二天

    JS是一种动态类型以及弱类型的语言。就是指变量的数据类型可以再在序的执行过程中发生变化。变量在申明的时候不需要指定...

  • 窥视

    到处都贴着禁止男女同学谈恋爱的标语,老师每周都能选几个同学到办公室谈谈正常交往的问题。就连每周一的校园例会,校长...

  • 窥视

    我是行走黑夜中的孤狼, 在黑暗中默默的注视着你。 我的存在你不曾发现, 我在等待着 与寂寞为伍 当我想拥有你时 我...

  • 窥视

    窥视 山清水秀 有一群人 戏水的无忧儿童 欢快舞动的少年画家 恬静摆弄美味的青年音乐人 还有一个坐在石头上 进行“...

  • 窥视

    你有没有感受过,身边有一双眼睛总是在盯着你,看着你在做什么。你的隐私被一览无余,你的生活被不断侵扰。你觉得逃离不开...

  • 窥视

    闭着眼睛地时候我开始听他们聒噪的声音 睁眼我就和他们对视 他们是不是一整夜不睡觉盯着我 啧 我吓出了一声冷汗 夹杂...

网友评论

      本文标题:窥视 JavaScript 第五天

      本文链接:https://www.haomeiwen.com/subject/estroftx.html