[19/05/29-星期三] JavaScript_ 函数的简介
一、函数的简介
- <!DOCTYPE html>
- <html>
- <head>
- <meta charset="UTF-8">
- <title>函数的入门</title>
- </head>
- <script type="text/javascript">
- /*函数(function)也是个对象,可以封装一些代码,在需要时调用
- 使用typeof检查函数对象时,会返回function
- 可以将要封装的代码以字符串的形式传递给构造函数
- 封装到函数中的代码不会立即执行,函数中代码会在函数调用时执行。 语法:函数对象名();
- 封装的代码会按顺序执行
- * */
- var fun=new Function("console.log('你敲代码好low呀');");/*这方式很少使用*/
- fun();
- /*使用函数声明来创建函数 (形参可有可无 即无参函数)
- function 函数名(形参1,形参2...){
- 函数体;
- }
- * */
- function fun2(){
- console.log("你敲代码好像蔡徐坤呀");
- }
- fun2();
- /*使用函数表达式来创建函数 --即创建匿名函数,然后把匿名函数赋值给一个变量
- var 函数名=function(形参1,....){
- }
- * */
- var fun3= function(){
- console.log("哈哈");
- };//这里最好加个分号,这是个赋值语句
- fun3();
- </script>
- <body>
- </body>
- </html>
二、函数参数和返回值
- <!DOCTYPE html>
- <html>
- <head>
- <meta charset="UTF-8">
- <title>函数的参数</title>
- </head>
- <script type="text/javascript">
- /*这里声明形参跟Java中不同,这里不用指定形参类型。它就相当于在函数内部声明了对应的变量var
- 1)浏览器的解析器不会检查实参的类型。即使传个参数("你好",123) 也不会报错。所以有时需要检查判断传入的数据类型
- 2)也不会检查实参的数量,多余的实参不会被赋值,也不会报错 (123,45,6)不会报错
- 3)如果实参的数量不够,则缺少的实参数据类型是undefined 输出结果为NaN
函数内部也可以声明函数。- *
- * * */
- function add(a,b){
- console.log(a+b);
- }
- add(2,3);
- /*函数的返回值 ,在函数中它不用指定的数据类型去接收,跟Java不同。在调用时接收这点是一样的
- return 之后的语句都不会执行 。return后边什么也不跟或不写return就相当于返回一个undefined
- return 可以返回任意类型的值。也可以是个对象,也可以是个函数
return 是它后边的语句都不会执行。break是跳出所有的循环,换句话说若是循环后边还有语句,还会执行,但是return则不是,直接退出函数也- * */
- function add2(a,b,c){
- var sum=a+b+c;
- return sum;
- }
- var result=add2(3,6,7);
- console.log(result);
- console.log(add2(3,12,8));
- </script>
- <body>
- </body>
- </html>
练习
- <!DOCTYPE html>
- <html>
- <head>
- <meta charset="UTF-8">
- <title>函数参数的练习</title>
- <script type="text/javascript">
- function isEven(n){/*判断一个数是不是偶数,是偶数返回true不是返回false*/
- /* if(n%2==0){
- console.log(n+"是偶数");
- }else{
- console.log(n+"不是偶数");
- }*/
- return n%2==0;
- }
- console.log(isEven(17));
- function area(R){//计算圆的面积
- return 3.14*R*R;
- }
- console.log(area(10));
- /*实参可以是任意一个数据类型,包括一个对象。当参数过多时,可以封装成一个对象传递*/
- var obj={
- name:"猴子",
- age:18,
- address:"花果山"
- }
- function sayHello(o){
- console.log("姓名:"+o.name+",年龄:"+o.age+",住址:"+o.address);
- }
- sayHello(obj);
- /*实参也可以是个函数*/
- function fun (a) {
- console.log("a="+a);
- a(obj);//调用a就是调用函数sayHello
- }
- fun(sayHello);//这里sayHello就是一个函数 同理fun也可以传个匿名函数.
- //fun(sayHello());调用sayHello函数 fun(sayHello);调用sayHello函数对象
- fun(function(){ console.log("hello")});
- </script>
- </head>
- <body>
- </body>
- </html>
[19/05/29-星期三] JavaScript_ 函数的简介的更多相关文章
- [19/05/26-星期日] JavaScript_ 基本语法_运算符
一.概念 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <titl ...
- 【Python】函数基础简介
一.函数 1. 简介 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段.函数能提高应用的模块性,和代码的重复利用率. 2. 组成 函数代码块以 def 关键词开头,后接函数名和圆括号( ...
- main函数的简介
//// main函数的简介.h// IOS笔记//// Created by .// Copyright © 2015年 All rights reserved.// //#import ...
- API各函数作用简介
API各函数作用简介 1.控件与消息函数 AdjustWindowRect 给定一种窗口样式,计算获得目标客户区矩形所需的窗口大小 AnyPopup 判断屏幕上是否存在任何弹出式窗口 ArrangeI ...
- SpringBoot+mybatis:报错Fri Oct 19 14:29:24 CST 2018 WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requiremen
报错:Fri Oct 19 14:29:24 CST 2018 WARN: Establishing SSL connection without server's identity verifica ...
- mssql sql server ceiling floor 函数用法简介
摘自: http://www.maomao365.com/?p=5581摘要: 下文主要讲述ceiling.floor函数的功能及举例说明 一.ceiling floor函数功能简介 ceiling ...
- mssql sql server 其它系统函数 parsename 点语法字符串分割函数应用简介
转自:http://www.maomao365.com/?p=4534 一. parsename函数功能简介 parsename函数的主要功能是:可以快速的使用”.”关键字分解字符串,并返回.分解后指 ...
- Python3 matplotlib的绘图函数subplot()简介
Python3 matplotlib的绘图函数subplot()简介 一.简介 matplotlib下, 一个 Figure 对象可以包含多个子图(Axes), 可以使用 subplot() 快速绘制 ...
- linux c语言 fork() 和 exec 函数的简介和用法
linux c语言 fork() 和 exec 函数的简介和用法 假如我们在编写1个c程序时想调用1个shell脚本或者执行1段 bash shell命令, 应该如何实现呢? 其实在<std ...
随机推荐
- vue打包多页报错webpackJsonp is not defined
找到build→webpack.prod.conf.js→找到HtmlWebpackPlugin插件,添加如下配置即可 chunks: ['manifest', 'vendor', 'app']
- react在视频中截图,保存为base64位
wq:之前看了网上很多教程,有点模糊,但是最后还是搞了出来 1 不要将视频放到canvas上面! 之前一直将video重新画到canvas上面,然后再次将第一个canvas放到第二个canvas上 ...
- 1.关于python 的hmac加密
import base64 import hmac import urllib from hashlib import sha1 expires = b" # 过期时间戳 uuid = 'a ...
- HTTP与HTTPS区别(详细)
转:http://blog.sina.com.cn/s/blog_6eb3177a0102x66r.html 1.减少http请求(合并文件.合并图片)2.优化图片文件,减小其尺寸,特别是缩略图,一定 ...
- linux system函数引发的错误
转: https://my.oschina.net/renhc/blog/54582 先看一下问题 简单封装了一下system()函数: int pox_system(const char *cm ...
- Oracle-RAC sysdate和current_date时间不一致,导致客户端连接时间延迟
[oracle@oracle-db1 ~]$ dateTue Oct 10 14:20:56 CST 2017[oracle@oracle-db1 ~]$ cat /etc/sysconfig/clo ...
- 在一个tomcat中配置多个tomcat服务器 111
<Service name="Tomcat_1"> <Connector port="8888" protocol="HTT ...
- ACM ICPC 2011-2012 Northeastern European Regional Contest(NEERC)B Binary Encoding
B: 现在有一种新的2进制表示法,要你求出0~m-1的每个数的表示. 规则如下:n 是满足 m<=2n 最小数. 而0~m-1的数只能够用n-1个位和n个位来表示. 对于n个位表示的数来说不能有 ...
- Base table or view not found
项目 代码分细致 改为Logic, Model, Controller ,View 四个模块 $model=D("Index",'Logic'); $res=$model-> ...
- 配置OpenLDAP,Java操作LDAP,DBC-LDAP进访问
LDAP快速入门 1. LDAP简介 LDAP(轻量级目录访问协议,Lightweight Directory Access Protocol)是实现提供被称为目录服务的信息服务.目录服务是一种特殊的 ...