• Javascript函数的几种写法


    最近在看某个插件的源码时,总是看到各种不同风格的js函数的写法。(怪我只是初级水平,看的一头雾水)

    于是想找点资料,总结总结,心里不清不楚的总是很别扭!

    1.常规写法

    复制代码
      // 函数写法
        function funName () {
            alert('常规写法');
        }
        // 调用
        funName();
    复制代码

    2.将方法作为一个对象

    复制代码
      // 作为对象方法
        var obj = {
            funName:function(){
                alert('这个必须放在一个对象内部,放在外边会出错!');
            }
        }
        // 调用方法
        obj.funName();
    复制代码

    3.匿名函数

    复制代码
        // 匿名函数
        var myfun = function(){
            alert('这是一种声明函数的方式,左边是一个变量,右边是一个函数的表达式,意思就是把一个匿名的函数表达式复制给了变量myfun,只是声明了一个变量指向了一个函数对象。');
        }
        // 调用
        myfun();
    复制代码

    4.构造函数中给对象添加方法,通常在构造函数中用到。

    javascript中的每个对象都有prototype属性,Javascript中对象的prototype属性的解释是:返回对象类型原型的引用。

    复制代码
      // 给对象添加方法
        var funName = function(){}
        funName.prototype.myfun = function(){
            alert('这是在funName函数上的原始对象上加了一个myfun方法,构造函数中用到');
        }
        // 调用
        var funname = new funName();// 创建对象
        funname.myfun();
    复制代码

    在给对象添加方法时可以用一下方式添加多个方法:

    复制代码
      // 给对象添加多个方法
        var funName = function(){}
        funName.prototype = {
            fun1:function(){
                alert('fun1');
            }
            ,fun2:function(){
                alert('fun2');
            }
        }
        // 调用
        var funname = new funName();// 创建对象
        funname.fun1();
        funname.fun2();

    本文参考:手撕面包

  • 相关阅读:
    Tomcat启动流程简析
    Tomcat的启停脚本源码解析
    Servlet规范
    CCNA
    CCNA-Part 6
    MYSQL 使用基础
    CCNA-Part5
    CCNA-Part4 -网络层
    MySQL 字符串索引优化方案
    CCNA-Part3
  • 原文地址:https://www.cnblogs.com/wkrbky/p/6243293.html
Copyright © 2020-2023  润新知