版权声明:未经允许禁止转载,否则会计入黑名单:http://www.cnblogs.com/123it/p/copyright.html

新手Perfect教程之Javascript②教程—函数

前言:上回我们是从hello world开始的,本期将会讲“函数”

在学自定义函数之前,先了解几个已经定义好的函数:

1 alert();                   //弹出消息对话框函数(JavaScript默认函数)
2 prompt(); //弹出输入对话框函数(JavaScript默认函数)
3 document.write(); //写字符到<body>里(JavaScript默认函数,document是一个默认对象,以后会讲到)

但是,你弹出对话框得有对话框内容吧;你写字符得有字符的内容吧……

如何确认内容呢?

我们就用函数的参数来确定,比如说这个:

 alert("这里是参数");

但是必须注意,如果参数是字符串,就必须加引号(单、双引号均可,只要是字符串在这一对引号中间即可)

假如要是在字符串参数里还需要进行第二层引用,就用不同于该参数的引号,比如说:

alert("Hi! This is a 'String'.")     //双引号中引用的用单引号

或者:

alert('Hi! This is another "String".');         //单引号中引用的用双引号

(提示:这两种都正确,本教程使用第一种)

这是部分Javascript的默认函数,那么,如何自己创建函数呢?

用function(){}即可自己创建函数,比如说这个最简单的函数框架:

 function test(){
//这里写执行函数后的代码
}

在上面的代码中,function后面的“test”是一个自定义的函数名,自定义函数名是有要求的:

1.可以使用大小写字母(A-Z,a-z)

2.可以使用数字(0-9)

3.不能出现其他特殊字符(&、*、#、@、!、~、/、\等)

4.不能出现中文!(这是重中之重!因为Javascript不能识别中文变量名!)

下面这是个无参数的函数:

 function noVar() {
alert("Hello World!");
}

为什么说是上面的函数是无参数的函数?因为上面的函数的函数名noVar后面的括号里没有定义参数。

参数也是可以自定义的,要求同自定义函数名。

下面这是个有参数的函数(Javascript里用“+”来代表两个变量相加):

 function haveVar(var1) {
alert("Welcome! Your name is " + var1);
}

怎么调用函数?

调用函数很简单,可以直接在<body>的onload参数里调用:

 <body onload="haveVar(John)">
//...
//...
//...
</body>

或者通过<input type="button">制作的按钮调用:

 <body>
//...
//...
<input type="button" onclick="haveVar(John)" value="按钮" /> //点击按钮后执行haveVar函数,参数为John
//...
//...
</body>

看到这里,可能有的童鞋就得问了,为什么调用带参数的函数时参数不加引号?

因为假如参数加了引号,那么浏览器看到onclick=时就不知道onclick的参数是   “haveVar(”   还是   “)”   还是   “John”   还是   “haveVar(John)”   了。

(注意:如果参数或一个变量没有被赋值任何数据,那么就是英文单词“undefined”(翻译:未定义的))

函数也可以是有返回值的,这样的话函数返回返回值后,整个调用函数的内容就会变成返回值(即哪里调用函数,哪里就把函数看成一个变量),比如说:

 function haveVar(var1,var2) {
var equal = var1 + var2; //计算var1+var2的值并存入equal变量中
return equal; //返回equal变量内容
}

假如调用这个函数时参数写上:haveVar(7,3),那么就会返回10。

————————The End————————

下期预告:新手Perfect教程之Javascript—③对象

我们下期再见!

作者:wy14abcd

未经允许不得转载

Javascript—②函数的更多相关文章

  1. ABP(现代ASP.NET样板开发框架)系列之21、ABP展现层——Javascript函数库

    点这里进入ABP系列文章总目录 基于DDD的现代ASP.NET开发框架--ABP系列之21.ABP展现层——Javascript函数库 ABP是“ASP.NET Boilerplate Project ...

  2. JavaScript权威设计--JavaScript函数(简要学习笔记十一)

    1.函数调用的四种方式 第三种:构造函数调用 如果构造函数调用在圆括号内包含一组实参列表,先计算这些实参表达式,然后传入函数内.这和函数调用和方法调用是一致的.但如果构造函数没有形参,JavaScri ...

  3. JavaScript 函数

    JavaScript 函数 介绍:函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块.嗯,就像Java中封装的方法一样. 将脚本编写为函数,就可以避免页面载入时执行该脚本. 函数包含着一些代码 ...

  4. javascript 函数初探 (一)--- 神马是函数

    神马是函数? 所谓函数,本质上是一种代码的分组形式.我们可以通过这种形式赋予某组代码一个名字,以便与之后的调用.下面,我们来示范以下函数的声明: function sum(a, b){ var c = ...

  5. JavaScript函数的概念

    函数是这样的一段代码,它只定义一次,但可能被执行或调用任意多次. JavaScript函数是参数化的:函数的定义会包含形参,这些参数在函数的整体中像局部变量一样工作.函数调用时会为形参提供实参的值.除 ...

  6. Javascript函数重载,存在呢—还是存在呢?

    1.What's is 函数重载? );//Here is int 10 print("ten");//Here is string ten } 可以发现在C++中会根据参数的类型 ...

  7. JavaScript 函数声明,函数表达式,匿名函数,立即执行函数之区别

    函数声明:function fnName () {-};使用function关键字声明一个函数,再指定一个函数名,叫函数声明. 函数表达式 var fnName = function () {-};使 ...

  8. javascript 函数重载 overloading

    函数重载 https://en.wikipedia.org/wiki/Function_overloading In some programming languages, function over ...

  9. JavaScript语言精粹读书笔记 - JavaScript函数

    JavaScript是披着C族语言外衣的LISP,除了词法上与C族语言相似以外,其他几乎没有相似之处. JavaScript 函数: 函数包含一组语句,他们是JavaScript的基础模块单元,用于代 ...

  10. 常见的JavaScript函数

    JavaScript函数一共可分为5类:常规函数.数组函数.日期函数.数学函数和字符串函数. (1)常规函数(9个) alert函数:显示一个警告对话框,包括一个“确定”按钮. confirm函数:显 ...

随机推荐

  1. Undefined symbols for architecture i386: "_crc32", referenced from:——crc链接错误

    有时候用别人的框架,你会碰到下面的错误,很是吓人,什么玩意,我怎么看不懂!!! Undefined symbols for architecture i386:  "_RELEASE&quo ...

  2. 解决tomcat运行报错java.lang.UnsatisfiedLinkError: apache-tomcat-7.0.37\bin\tcnative-1.dll:Can load AMD 64

    http://www.apache.org/dist/tomcat/tomcat-connectors/native/ 到该地址下下载一个tomcat-native-1.2.2-win32-bin压缩 ...

  3. 【转】 Vim多行缩进及高级命令

    学习别人的帖子,把内容变成自己的就是成长,此处MARK下 Vim多行缩进技巧 1.按v进入visual状态,选择多行,用>或<缩进或缩出 2. 通常根据语言特征使用自动缩进排版:在命令状态 ...

  4. MYSQL最大连接数修改

    MYSQL数据库安装完成后,默认最大连接数是100,一般流量稍微大一点的论坛或网站这个连接数是远远不够的,增加默认MYSQL连接数的方法有两个 方法一:进入MYSQL安装目录 打开MYSQL配置文件 ...

  5. 配置Linux Kernel时make menuconfig执行流程分析

       在编译内核前,一般是根据已有的配置文件(一般在内核根目录下的arch/arm/configs/文件夹下,把该目录下的xxx_defconfig文件拷贝到内核根目录下,并重命名为.config)来 ...

  6. css 之!important

    主要是自己犯了个错误: 把 !important 放到了分号后面; 正确写法写法: .current{ background-color: #f1f1f1; border-left: 2px soli ...

  7. win7下sublime text3 安装Emmet的pyv8

    1.通过快捷键 ctrl+` 或者 View > Show Console 菜单打开控制台 2.适用于 Sublime Text 3: import urllib.request,os;pf=' ...

  8. PHP获取当前类名、函数名、方法名

    PHP获取当前类名.方法名  __CLASS__ 获取当前类名  __FUNCTION__ 当前函数名(confirm)  __METHOD__ 当前方法名 (bankcard::confirm) _ ...

  9. CSS3 :target伪类的理解与使用

    CSS3 :target伪类用来改变页面中锚链接URL所指向的ID元素的样式,例如你要改变描链接指向#tab的元素字体颜色为蓝色,哪么你可以这样写成#tab:target {color:blue} 浏 ...

  10. jquery图片放大镜和遮罩层效果

    图片放大镜效果将借助于jqzoom插件,遮罩层借助于thickbox插件. 1.引入样式表 /*整体样式*/ <link rel="stylesheet" href=&quo ...