一、默认函数

JavaScript提供了一些默认的函数

编码函数escape():将非字母、数字字符转换成ASCII码

译码函数unescape():将ASCII码转换成字母、数字字符

求值函数eval()

数值判断函数isNaN():判断一个值是否为非数值类型

整数转换函数parseInt():将不同进制(二、八、十六进制)的数值转换成十进制整数

浮点数转换函数parseFloat():将数值字串转换成浮点数

1、eval()函数

求值函数eval()的格式为:eval(<表达式>)

下面的例子将用eval函数得到一个文本框的值,

然后通过点击按钮弹出一个对话框将其输出。

<script>

function show(obj)

{

var str=eval("document.Form."+obj+".value");

alert(“你输入的姓名是:”+str);

}

</script>

<form name="Form" id="Form">

姓名:

<input name="name" type="text" value="韦小宝">

<input name="button" type="button" value="提交" onClick=show("name")>

</form>

2、isNaN()函数

数值判断函数isNaN()的格式:isNaN(<量>)

下例中isNaN函数将判断变量是否不是数值,并输出判断结果。

<script>

var x=15;

var y="黄雅玲";

document.write("<LI>x不是数值吗?",isNaN(x));

document.write("<LI>y不是数值吗?",isNaN(y));

</script>

3、parseInt()函数

整数转换函数parseInt()的功能是将不同进制(二、八、十六)的数值转换成十进制整数。

格式:parseInt(数值字串[,底数])

下面演示了将一个二进制数和一个十六进制数转换成十进制数。

<script>

document.write("1101<sub>2</sub>=",parseInt("1101",2),"<sub>10</sub><br>");

document.write("BFFF<sub>16</sub>=",parseInt("BFFF",16),"<sub>10</sub><br>");

</script>

4、parseFloat()函数

parseFloat()是浮点数转换函数,它将数值字串转换成浮点数。

格式:parseFloat(数值字串)

<script>

document.write(parseInt("3.1234A56"),"<br>");

document.write(parseFloat("3.1234A56"),"<br>");

</script>

5、自定义函数

函数是独立于主程序的、具有特定功能的一段程序代码块。

JavaScript函数定义

function 函数名(参数表,变元)

{

函数体;

return 表达式;

}

说明:

·当调用函数时,所用变量或字面量均可作为变元传递。

·函数由关键字function定义。

·函数名:定义自己函数的名字。

·参数表,是传递给函数使用或操作的值,其值可以是常量、变量或其它表达式。

·通过指定函数名(实参)来调用一个函数。

·函数的返回值是可选项,如果需要返回值,就必须使用return语句将值返回。

·函数名对大小写是敏感的。

约定:

·函数名:易于识别(同变量命名规则)。

·程序代码:模块化设计。

·函数位置:按逻辑顺序,集中置顶。

6、函数中的形式参数

在函数的定义中,我们看到函数名后有参数表,这些参数变量可能是一个或几个。那么怎样才能确定参数变量的个数呢?在JavaScript中可通过arguments.length来检查参数的个数。

<script>

function function_Name(exp1,exp2,exp3,exp4)

Number =function_Name.arguments.length;

if(Number>1)

document.wrile(exp2);

if(Number>2)

document.write(exp3);

if(Number>3)

document.write(exp4);

</script>

函数的调用

格式:函数名([参数[,参数...]])

下面的例子演示了没有返回值的函数的定义及调用。

<script>

function showName(name)

{

document.write("我是"+name);

}

showName("玲玲"); //函数调用

</script>

上例中的function showName(name)为函数定义,其中括号内的name是函数的形式参数,这一点与C语言是完全相同的,而showName(“玲玲”)则是对函数的调用,用于实现需要的功能。

下面的例子演示了带返回值的函数的定义及调用。

<script>

function showName(name)

{

str="我是" +name;

return str;

}

document.write(showName("周伯通"));

</script>

二、函数与事件

事件驱动及事件处理的基本概念

JavaScript是基于对象(Object-Based)的语言,这与Java不同,Java是面向对象的语言。而基于对象的基本特征,就是采用事件驱动(Event Driven)。通常鼠标或热键的动作我们称之为事件(Event),而由鼠标或热键引发的一连串程序的动作,称之为事件驱动(Event Driver)。而对事件进行处理的程序或函数,我们称之为事件处理程序(Event Handler)。

事件处理程序

浏览器响应某个事件,实现用户的交互操作而进行的处理(过程)。

事件处理程序的调用:浏览器等待用户的交互操作,并在事件发生时,自动调用事件处理程序(函数),完成事件处理过程。

HTML标签属性:

格式:<tag on事件=“<语句组>|<函数名>”>

由于在JavaScript中对象事件的处理通常由函数(function)来完成,且其基本格式与函数一样,所以可以将前面所介绍的所有函数作为事件处理程序。

格式如下:

function 事件处理名(参数表)

{

事件处理语句集;

……

}

三、事件驱动

JavaScript事件驱动中的事件是通过鼠标或热键的动作引发的。它主要有以下几个事件:

单击事件onClick

改变事件onChange

选中事件onSelect

获得焦点事件onFocus

失去焦点onBlur

载入文件onLoad

鼠标指示事件onMouseOver

提交事件onSubmit

1、单击事件onClick

当用户单击鼠标按钮时,产生onClick事件。同时onClick指定的事件处理程序或代码将被调用执行。通常在下列基本对象中产生单击事件:

button(按钮对象)

checkbox(复选框)或(检查列表框)

radio(单选钮)

reset buttons(重要按钮)

submit buttons(提交按钮)

比如,可以通过下面的按钮激活change()函数,当然change()函数是需要另外提供的:

<form>

<input type="button" value=“” onClick="change()">

</form>

  在onClick等号后,可以使用自己编写的函数作为事件处理程序,也可以使用JavaScript的内部函数,还可以直接使用JavaScript的代码等。

<body>

<form>

请输入基本资料:<br>

姓名:

<input type="text" name="usr" size="8">

<input type="button" value="请单击"               onClick="alert('谢谢你的填写...')">

</form>

</body>点击“请单击”按钮后将引发onClick事件,即弹出“谢谢你的填写...”的对话框。

2、改变事件onChange

当一个text或textarea域失去焦点并更改值时触发onChange事件,当select下拉选项中的一个选项状态改变后也会引发该事件。

事件适用对象fileUpload、select、text、textarea。

下面的例子在文本框的内容改变后,将弹出一个显示“内容即将改变!”的对话框:

<form>

<input type="text" name="Test" value="Test"                 onChange="alert('内容即将改变!')">

</form>

页面运行后在文本框中输入内容,即内容发生改变,然后将鼠标拖走,就会引发.

3、onChange事件

选中事件onSelect

当text或textarea对象中的文字被选中后(文字高亮显示),引发该事件。

下面的例子中,当文本框的内容被选中后,将弹出一个显示“内容已被选中!”的对话框:

<form>

<input type="text" name="Test" value="Test"             onSelect="alert('内容已被选中!')">

</form>

4、获得焦点事件onFocus

当用户单击text或textarea以及select对象时,产生该事件。此时该对象成为前台对象。

该事件适用对象:button,checkbox,fileUpload,layer,password,radio,reset,select,submit,text,textarea,window。

下面的例子中,当鼠标移到文本域的地方即获得焦点时,立刻弹出一个提示“已经获得焦点!”的对话框:

<input type="textarea" value="" name="valueField" onFocus="alert('已经获得焦点!')">

5、失去焦点onBlur

当text对象或textarea对象以及select对象不再拥有焦点、而退到后台时,引发该事件,onBlur事件与onFocus事件是一个对应的关系。

该事件适用对象:button,checkbox,fileUpload,layer,password,radio,reset,select,submit,text,textarea,window。

下面的例子中,浏览器的起始背景色为“lightgrey”,当鼠标移到文本域的地方即获得焦点时,浏览器的背景色变为“red”,当鼠标焦点移动到浏览器的其他地方时,浏览器的背景色变为“white”。

<body bgColor="lightgrey">

<form>

<input type="text"                        onFocus="document.bgColor='red'"           onBlur="document.bgColor='white'" >

</form>

</body>

6、载入文件onLoad

当文件载入时,产生该事件。onLoad的作用就是在首次载入一个文档时检测cookie的值,并用一个变量为其赋值,使它可以被源代码使用。

下面的代码在文档打开时,将弹出提示“建议浏览器的分辨率:800x600”的对话框。

<script>

function show()

{

var str="建议浏览器的分辨率:800x600";

alert(str);

}

</script>

<body onload="show();">

7、鼠标指示事件onMouseOver

当鼠标指到相应的位置时引发的事件。

事件适用对象:layer,link。

下面的例子中,用href给“Click me”加上一个超链接,当鼠标指到超链接“Click me”时,将在状态栏提示“Click this if you dare!”。

<a href="http://www.myhome.com/"

onMouseOver="window.status='Click this if you dare!'; return true">

Click me

</a>

当鼠标指到文字“Click me”上时,将在状态栏显示提示文字“Click this if you dare!”

8、提交事件onSubmit

它是在点击提交按钮时引发的事件。

事件适用的对象:form

语法:onSubmit="handlerText"

下面的例子中,在点击“提交”按钮时,就会弹出一个“你确认提交吗?”的提示对话框。

<form onSubmit="alert('你确认提交吗?')">

<input type="text" name="txt" value="测试文本">

<input type="submit" value="提交">

</form>

补充:定时器

定时器是用以指定在一段特定的时间后执行某段程序。常用的定时器函数有以下几个:

setTimeout():定时器

clearTimeout():终止定时器

setInterval():设置定时器

clearInterval():取消使用setInterval()设置的定时器

Javascript函数和事件相关推荐

  1. javascript函数与事件

    Javascript函数创建与使用 什么是函数 对于我们学过java的同学,我们可以将函数理解成就是我们在java中的方法. 创建函数 在ECMAScript中函数有以下几种创建方式 第一种 func ...

  2. JavaScript交互式网页设计 • 【第2章 JavaScript函数与事件】

    全部章节   >>>> 本章目录 2.1 JavaScript 自定义函数 2.1.1 函数的定义 2.1.2 函数的调用 2.1.3 函数的参数 2.1.4 函数的返回值 2 ...

  3. JavaScript函数调用方式:简单调用+在超链接中调用JavaScript函数+在事件中调用JavaScript函数

    简单的调用 <html> <head> <meta http-equiv="Content-Type" content="text/html ...

  4. 5、JavaScript进阶篇②——函数、事件、内置对象

    一.函数 1. 什么是函数 函数的作用,可以写一次代码,然后反复地重用这个代码. 如:我们要完成多组数和的功能. var sum; sum = 3+2; alert(sum);sum=7+8 ; al ...

  5. Web前端基础---JavaScript函数事件及其绑定DOM模型BOM模型

    Day03 JavaScript JavaScript是一种属于网络的高级脚本语言,被广泛用于Web应用开发,常用来为网页添加各式各样的动态功能,为用 户提供更流畅美观的浏览效果.通常JavaScri ...

  6. javascript打飞机程序8x8x飞机大战js打飞机程序,飞机大战知识点包含了JavaScript面向过程的全部知识点,包括变量、运算符、判断、循环、数组、自定义函数、系统函数、事件等。...

    js打飞机程序,飞机大战知识点包含了JavaScript面向过程的全部知识点,包括变量.运算符.判断.循环.数组.自定义函数.系统函数.事件等. 讲解了JavaScript编程语言制作游戏界面,添加游 ...

  7. JavaScript交互式网页设计——函数与事件

    <1>.函数的定义 函数:为完成特定的功能而定义的一段程序代码 函数的定义: function 函数名(参数列表){ 程序代码 } 1.JavaScript函数不必说明返回值类型,列表参数 ...

  8. js onscroll android,JavaScript触发onScroll事件的函数节流详解

    问题描述 常见的网站布局,顶部一个导航栏,我们假设本页面共有四个栏目:分别为A.B.C.D,我们点击A,锚点跳转至A栏目,同时顶部的A按钮高亮:点击B,锚点跳转至B栏目,同时顶部的B按钮高亮:我们在M ...

  9. Angular input控件的click事件表达式如何被转换成JavaScript函数

    源代码: <button (click)="toggle($event)">隐藏/显示</button> 这个表达式toggle($event),如何被An ...

最新文章

  1. 怎样知道一个数是不是2的N次方,怎样判断一个数是奇数还是偶数
  2. 【原】Coursera—Andrew Ng机器学习—课程笔记 Lecture 17—Large Scale Machine Learning 大规模机器学习...
  3. 什么是工业光纤收发器,工业收发器的作用是什么?
  4. 中文摘要生成 综述
  5. 408计算机网络考研试题,2021考研计算机(408)试题及解析——计算机网络
  6. [转]Vs解决方案的目录结构设置和管理
  7. 雨松MOMO《Unity 3D游戏开发》源码公布
  8. C语言程序设计练习题解
  9. 信息量、信息熵、交叉熵、KL散度、JS散度、Wasserstein距离
  10. 使用jquery获取父元素或父节点的方法
  11. IBM ServerGuide 10.2
  12. html圈小猫小游戏
  13. 转录组分析之 Trimming对reads进行处理
  14. springboot页面模板thymeleaf的简单用法
  15. dell服务器报错信息,DELL 服务器LED屏报错信息 2012版
  16. 数据分析预测的方法有哪些
  17. Windows和iPad传输
  18. python公里转英里_python公里转英里_从英里换算为公里
  19. 测试的入门与学习篇之一
  20. ROS2与C++入门教程-编写服务端和客户端 - 创客智造

热门文章

  1. 【错误记录】VMware 虚拟机报错 ( Ubuntu-Unattended upgrade in progress during shutdown, please don‘t turn off )
  2. 【数字信号处理】相关函数 ( 卷积与交换性 | 相关函数不具有交换性 | 推导过程 )
  3. 【错误记录】Android 模拟器安装应用报错 ( INSTALL_FAILED_INSUFFICIENT_STORAGE )
  4. 【计算理论】计算复杂性 ( NP 完全问题 | 顶点覆盖问题 | 哈密顿路径问题 | 旅行商问题 | 子集和问题 )
  5. 【Android 安全】DEX 加密 ( Java 工具开发 | 生成 dex 文件 | Java 命令行执行 )
  6. 【Android NDK 开发】JNI 引用 ( 弱全局引用 | NewWeakGlobalRef | DeleteWeakGlobalRef )
  7. 【Android应用开发】Android Studio 错误集锦 -- 将所有的 AS 错误集合到本文
  8. 4.15第8周 第一节
  9. JSP/Servlet Web 学习笔记 DayFour —— 实现一个简单的JSP/Servlet交互
  10. 移动端整屏滑动的实现