写在前面:本文详细的介绍了5中js函数常见的写法以及调用的方法,平时看别人代码的时候总是看到各种不同风格的js函数的写法。不明不白的,找了点资料,做了个总结,需要的小伙伴可以看看,做个参考。
1.常规写法(最常见的那种)


  1. //函数的写法
  2. function run () {
  3. alert('常规写法');//这里是你函数的内容
  4. }
  5. // 调用
  6. run();

2.匿名函数写法(可以想成给变量赋值一个函数)


  1. // 匿名函数的写法
  2. var run = function(){
  3. alert('这是一种声明函数的方式,左边是一个变量,右边是一个函数的表达式,意思就是把一个匿名的函数表达式赋值给了变量myfun,只是声明了一个变量指向了一个函数对象。');//这里是你函数的内容
  4. }
  5. // 调用
  6. run();

3.将方法作为一个对象


  1.  // 作为对象方法,函数写法,这里创建了两个函数外面用{}包裹起来
  2. var Test = {
  3. run1:function(){
  4. alert('这个必须放在一个对象内部,放在外边会出错!');//这里是你函数的内容
  5. }
  6. ,run2:function(){
  7. alert('这个必须放在一个对象内部,放在外边会出错!');//这里是你函数的内容
  8. }
  9. }
  10. //调用
  11. Test.run1();//调用第1个函数
  12. Test.run2();//调用第2个函数

4.构造函数中给对象添加方法 

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


  1. // 给对象添加方法
  2. var funName = function(){};
  3. funName.prototype.way = function(){
  4. alert('这是在funName函数上的原始对象上加了一个way方法,构造函数中用到');
  5. }
  6. // 调用
  7. var funname = new text();// 创建对象
  8. funname.way();//调用对象属性

5.自执行函数

js自执行函数查到了几种不同写法,放上来给大家看看


  1. //方法1:最前最后加括号
  2. (
  3. function(){alert(1);}()
  4. );
  5. /*这是jslint推荐的写法,好处是,能提醒阅读代码的人,这段代码是一个整体。
  6. 例如,在有语法高亮匹配功能的编辑器里,光标在第一个左括号后时,最后一个右括号也会高亮,看代码的人一眼就可以看到这个整体。 */

  1. //方法2:function外面加括号
  2. (function(){alert(1);})();
  3. //这种做法比方法1少了一个代码整体性的好处。

  1. //方法3:function前面加运算符,常见的是!与void 。
  2. !function(){alert(1);}();
  3. void function(){alert(2);}();
  4. /*显然,加上“!”或“+”等运算符,写起来是最简单的。
  5. 加上“void ”要敲五下键盘,但是听说有一个好处是,比加"!"少一次逻辑运算。----我只是听说,不明所以。*/

以上。

参考:1.http://www.jb51.net/article/31078.htm

2.http://www.cnblogs.com/Imever/p/4777985.html
希望看完的朋友点个喜欢,想关注我这个菜鸡是如何成长的也可以关注一下我,基本上每个月都不会少于十五篇文章(看到干货我也会进行分享)。然后github也互相加个star。码字不易,感谢支持,感激不尽!
ps:如果希望我写哪方面的文章可以在底下评论,或者是私信我,虽然写的不好,但我就当这是记录自己成长的一种方式咯。(前提是我会了,如果不会我也会记下来,等会了的时候再更出来。),

js函数常见的写法以及调用方法的更多相关文章

  1. js函数的各种写法与调用

    以下是我见过的各种js函数的各种写法以及调用,虽然有些写法及其调用我不清楚其专业术语叫啥,但并不影响我写一个总结笔记. 我们刚开始接触js语音,经常看到的这种名叫“使用function关键字来定义函数 ...

  2. js 函数闭包内部返回函数体调用方法难点解答

    今天在网上,看到一篇关于js函数难点的文章,js函数的一些难点.在那上面提了一下,关于js函数返回另一个函数的问题,并附上了一道面试题: var add = function(x){ var sum ...

  3. (转)在网页中JS函数自动执行常用三种方法

    原文:http://blog.sina.com.cn/s/blog_6f6b4c3c0100nxx8.html 在网页中JS函数自动执行常用三种方法 在网页中JS函数自动执行常用三种方法 在HTML中 ...

  4. 【微信小程序】在js中导入第三方js或自己写的js,使用外部js中的function的两种方法 import和require的区别使用方法 【外加:使用第三方js导出的默认function的调用方法】

    如下 定义了一个外部js文件,其中有一个function import lunaCommon from '../lunaCommon.js'; var ctx = wx.getStorageSync( ...

  5. 在网页中JS函数自动执行常用三种方法

    在网页中JS函数自动执行常用三种方法 在HTML中的Head区域中,有如下函数: <SCRIPT   LANGUAGE="JavaScript">   function ...

  6. JS总结之一:字符串的调用方法

    字符串的调用方法:var s="hello, world";document.write(s.charAt(0)); //第一个字符document.write(s.charAt( ...

  7. js函数 test.caller 谁在调用test函数

    返回调用指定函数的函数. function test() { if (test.caller === null) console.log('test 函数在全局调用'); // 获取调用 test函数 ...

  8. js函数arguments与获取css样式方法

    函数传参,当参数的个数不定时,可以使用arguments:表示实参集合 arguments.length=实参个数 获得css样式方法: getComputedStyle()方法---->得到的 ...

  9. 网页中JS函数自动执行常用三种方法

    (1)最简单的调用方式,直接写到html的body标签里面:        <body onload="myFunction()"></body>      ...

随机推荐

  1. VGA线 1080P之伤 <中秋节篇>

    故障:通过一台笔记本,在一台高清的电视机上使用VGA线进行视频传输,分辩率最高只能显示1600*1200,为什么不是1080P? 哎,我也很郁闷,查了相关的资料~电视机是最高支持1080P分辩率的,笔 ...

  2. select 数字/字符串/count(参数)/sum(数字) from table

    第一种的写法是增加临时列,每行的列值是写在select后的数: --1select 1 from W_EC_PLACESTATION_COLLECT t--2select 2 from W_EC_PL ...

  3. vue-preview的使用

    使用vue-preview做图片缩率图1.安装 npm i vue-preview -S2.如果使用vue-cli生成的项目,需要修改webpack.base.conf.js文件中的loaders,添 ...

  4. 解决PHP5.6版本“No input file specified”的问题

    问题描述:使用TP框架做项目时,在启用REWRITE的伪静态功能的时候,首页可以访问,但是访问其它页面的时候,就提示:“No input file specified.”原因在于使用的PHP5.6是f ...

  5. spring boot 使用视图modelandview

    1:springboot使用视图解析器,添加依赖 <!-- freemarker模板引擎视图 --> <dependency> <groupId>org.sprin ...

  6. express使用

    1.安装express命令 cnpm install express --save 2.使用方法 var express = require('express'); var app = express ...

  7. 模仿以太坊 ERC20 规范的 Hyperledger Fabric 实现 Token 通证

    合约: package main /* -------------------------------------------------- Author: netkiller <netkill ...

  8. web应用的乱码解决

    用get方式请求,不同的浏览器对参数的编码不一样,导致在服务器的编码处理麻烦. 解决方案: 利用javascript中的方法encodeURI对其进行编码(默认为"UTF-8") ...

  9. git push 报错:you are not allowed to upload merges

    git rebase Cannot rebase: You have unstaged changes. git stash # 每次 push 前 git pull --rebase git pus ...

  10. 机器学习算法的调试---梯度检验(Gradient Checking)

    梯度检验是一种对求导结果进行数值检验的方法,该方法可以验证求导代码是否正确. 1. 数学原理   考虑我们想要最小化以 θ 为自变量的目标函数 J(θ)(θ 可以为标量和可以为矢量,在 Numpy 的 ...