js 函数:

概念:函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块。

说白了就是响应用户操作所执行的代码,通过js事件触发,然后调用执行函数里代码的操作。

比如常见的用户点击事件,用户点击了按钮,如果这个按钮绑定了点击事件的话就会触发点击事件,触发了点击事件干什么呢,这时候就需要给这个点击事件绑定一个函数了,这样用户点击以后就可以触发函数,然后执行函数里面的操作。如:

<script>
function myFunction()
{
alert("Hello World!");
}
</script>
<button onclick="myFunction()">点击这里</button>

语法

用的时候直接 function funname(){} 需要记住的是 functionjs 关键字,注意只能是小写,在调用函数时会执行函数{}里的代码块。如:

<button class="btn" onclick="fun1()">点击</button>
<script>
function fun1(){
alert(num);
alert(type);
}
</script>

参数和变量

在调用函数的时候可以传递参数,在调用的函数里面多个参数用“,”分开。然后在定义函数的时候需要在小括号里将参数使用变量代替,这里需要注意的是变量的位置要和调用那里的参数一一对应,变量名可以随便写。

<button class="btn" onclick="fun1(index,type)">点击</button>
<script>
function fun1(i,t){
alert(i);
alert(t);
}
</script>

通过参数的传递可以使函数变得更灵活,比如有三个地方需要调用这个函数,每个调用的地方参数有不一样,这样也是没问题的。

<button class="btn" onclick="fun1("1")">点击</button>
<button class="btn" onclick="fun1("2",type)">点击</button>
<button class="btn" onclick="fun1("3")">点击</button>
<script>
function fun1(i,t){
type = type?"type":"";
alert(num);
alert(type);
}
</script>

扩展:

return

一个函数生来就是为了输出处理过的返回值的时候,需要将返回值抛出,这时候就需要return了,看例子:

<script>
function fun1(i,t){
type = type?"type":"";
if(i ==1){
return "ok";
}else{
return "no";
}
}
</script>

这里随便写了个函数,根据用户调用函数时传的参数进行判断,然后输出不同的值。

局部变量:

局部变量说白了就是函数内部定义的变量,这个变量的作用域只在这个函数内部(需要注意的是必须是通过var定义的变量),在函数外部访问变量的话是underfind。例子:

 <script>
function fun1(i,t){ var type1 = type?"type":"";
if(i ==1){
return "ok";
}else{
return "no";
} }
alert(type1); </script>

这里一定会 alert(underfind)

© 著作权归作者所有

著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。

前端小课堂 js:what is the function?的更多相关文章

  1. 前端小课堂 js:函数的创建方式及区别

    js 函数的创建大体有这几种方式: -1-函数表达式(函数字面量): 说白了就是把一个函数赋值给了一个变量. var fun1 = function(index){ alert(index); } f ...

  2. 自定义博客cnblogs样式的必备前端小知识——js、jq

    JQ.JS相关小知识 任意元素自动点击 $(".editicon").trigger('click') 添加子元素 append() - 在被选元素的结尾插入内容 prepend( ...

  3. 前端小知识-js

    一.对象冒充 function student(name,age){ this.name = name; this.age = age; this.show = function(){ console ...

  4. 前端小程序——js+canvas 给图片添加水印

    市场上各种各样的图片处理器有很多,那么作为程序员的我们是不是应该自己做一个呢?那就从加水印开始吧 html: <canvas id="shuiyinTest"> < ...

  5. vue ele 表单规则校验俩次输入密码是否相同,校验手机号 ( 前端小课堂:小细节,大进步 )

     这个是密码的拦截 : [{ required: true, validator: validatePass4, trigger: "blur" }],   同级关系下写下方法,类 ...

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

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

  7. 前端——语言——Core JS——《The good part》读书笔记——第四章节(Function)

    本章介绍Function对象,它是JS语言最复杂的内容. Java语言中没有Function对象,而是普通的方法,它的概念也比较简单,包含方法的重载,重写,方法签名,形参,实参等. JS语言中的Fun ...

  8. Spark小课堂Week3 FirstSparkApp(RDD开发)

    Spark小课堂Week3 FirstSparkApp 问题:Java有哪些数据结构 大致有如下几种,其中List与Map是最重要的: List Map Set Array Heap Stack Qu ...

  9. 0基础菜鸟学前端之Vue.js

    简介:0基础前端菜鸟,啃了将近半月前端VUE框架,对前端知识有了初步的了解.下面总结一下这段时间的学习心得. 文章结构 前端基础 Vue.js简介 Vue.js常用指令 Vue.js组件 Vue.js ...

随机推荐

  1. php代码书写习惯优化小结

    (1)使用 static 静态方法比普通方法快4倍(2)echo输出快于print(3)连接字符使用 , 代替 .(4)循环之前先取出最大值,而不是在循环里面取值    正确的方法      $max ...

  2. CentOS7更换yum源为阿里云镜像源

    1. 备份原来的yum源 cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak 2.设置aliyun的y ...

  3. 搭建svn管理平台

    安装svn服务器:yum -y install subversion 创建svn的目录:mkdir -p /data/svn 初始化svn目录:svnadmin create /data/svn co ...

  4. opacity 兼容 ie8

    opacity: 0.6; filter: alpha(opacity=60);

  5. 文本编辑器 未完成 Treap

    #include<bits/stdc++.h> using namespace std; const int maxn = 2e6+1e5; unsigned int SEED = 17; ...

  6. mock static方法

    <dependency> <groupId>org.powermock</groupId> <artifactId>powermock-api-mock ...

  7. C++ STL之Set

    set是关联容器,类似于集合. 特点是里面的元素不会重复,而且元素时有序的. 1.声明定义: #include<set> using namespace std; set<int&g ...

  8. Mysql 忘记密码----修改Navicat的连接密码--以及--(加入安装Navicat时没设置密码)有时新建连接设置密码,连接不成功---的问题解决方法

    密码忘记的解决 可以参考http://jingyan.baidu.com/article/454316ab4e9e65f7a7c03ad1.html 1.安装路径(复制安装路径) 2.打开cmd命令提 ...

  9. python 获取子目录下的所有文件的路径

    import os pathss=[] for root, dirs, files in os.walk(tarpath): path = [os.path.join(root, name) for ...

  10. temp脚本

    !/bin/bash source ${HOME_DIR}/script/ideploy_dm.inc source ${HOME_DIR}/script/comm_lib home_dir=$(cd ...