当前位置:文档之家› Javascript事件处理函数及其使用列表

Javascript事件处理函数及其使用列表

Javascript事件处理函数及其使用列表
Javascript事件处理函数及其使用列表

Javascript事件处理函数及其使用列表

事件处理函数影响的元素何时发生onAbort图像当图像加载时

onBlur窗口、框架、所有表

单对象当焦点从对象上移开时(如:光标离开文本框)

onChange输入框、选择和文本

框当用户改变一个元素值且

失去输入焦点时

onClick链接、按钮、表单对

象、图像映射区域但用户单击对象时。返回false来取消默认的动作

onDblClick链接、按钮、表单对

当用户双击对象时

onDragDrop窗口当用户将一个对象拖

放到浏览器窗口时onError脚本当脚本中发生语法错

误等错误时

onFocus窗口、框架、所有表

单对象单击或者移动到焦点窗口或框架时

onKeyDown文档、图像、链接、

表单

当按键被按下时

onKeyPress文档、图像、链接、

表单当按键被按下然后松开时

onKeyUp文档、图像、链接、

表单

当按键被松开时onLoad主体、框架集、图像文档或图像加载后onMouseout链接鼠标移出时onMouseOver链接鼠标移动到链接时onMove窗口当浏览器窗口移动时

onRest表单复位按钮单击表单的rest按钮onResize窗口当浏览器窗口大小改

变时

onSelect表单元素当选择一个表单对象

onSubmit表单当要发送表格到服务

器时

onUnload主体、框架集文件或框架集关闭或

复位后

Javascript前台捕获浏览器关闭事件,后台处理一些善后工作

Javascript前台捕获浏览器关闭事件,后台处理一些善后工作 1.使用onbeforeunload 事件捕获浏览器关闭事件 IE和火狐都支持onbeforeunload事件,但是opera不支持。 注意:不仅关闭浏览器时会触发onbeforeunload事件,刷新等事件也会触发onbeforeunload事件。 2.事件注册方法 3.使用Ajax技术向服务器异步发送需要做的善后工作 这里以登陆为例:当用户关闭浏览器时,需要把用户登陆的状态修改为‘已退出’。由于用户登陆的状态存放在服务器的数据库中,所有必需在客户端捕获浏览器关闭动作,在浏览器关闭之前,向服务器发送一个请求,当然这个的请求是异步发送的(Ajax技术);服务器收到请求后,把当前用户的登陆状态修改为‘已退出’。 function CloseBrowse()//用户关闭浏览器 { var n = window.event.screenX - window.screenLeft; var b = n > document.documentElement.scrollWidth - 20; //可以捕获点击小差和 Alt+F4 时浏览器关闭的情况,但是不能捕获在多窗口浏览模式下,用户点多窗口模式的小差关闭浏览器的情况 if (b && window.event.clientY < 0 || window.event.altKey) { var url = "Service.asmx/UpdateLoginState"; UpdateLoginState(url); } } //使用Ajax 向服务器发送异步请求,要求服务器修改登录状态 function UpdateLoginState() { var url = "Service.asmx/UpdateLoginState"; SendRequestToWebService(url); } function SendRequestToWebService(url){ createXmlhttp(); xmlhttp.open("POST", url, true); //xmlhttp.onreadystatechange = handleStateChange; xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;"); xmlhttp.send(); } //创建XMLHttpRequest对象 function createXmlhttp() {

Javascript鼠标触发事件大全

Javascript鼠标事件大全 一般事件 事件浏览器支持描述 onClick IE3|N2|O3 鼠标点击事件,多用在某个对象控制的范围内的鼠标点击 onDblClick IE4|N4|O 鼠标双击事件onMouseDown IE4|N4|O 鼠标上的按钮被按下了onMouseUp IE4|N4|O 鼠标按下后,松开时激发的事件 onMouseOver IE3|N2|O3 当鼠标移动到某对象范围的上方时触发的事件 onMouseMove IE4|N4|O 鼠标移动时触发的事件 onMouseOut IE4|N3|O3 当鼠标离开某对象范围时触发的事件 onKeyPress IE4|N4|O 当键盘上的某个键被按下并且释放时触发的事件.[注意:页面内必须有被聚焦的对象] onKeyDown IE4|N4|O 当键盘上某个按键被按下时触发的事件[注意:页面内必须有被聚焦的对象] onKeyUp IE4|N4|O 当键盘上某个按键被按放开时触发的事件[注意:页面内必须有被聚焦的对象] 页面相关事件 事件浏览器支持描述 onAbort IE4|N3|O 图片在下载时被用户中断 onBeforeUnload IE4|N|O 当前页面的内容将要被改变时触发的事件 onError IE4|N3|O 捕抓当前页面因为某种原因而出现的错误,如脚本错误与外部数据引用的错误 onLoad IE3|N2|O3 页面内空完成传送到浏览器时触发的事件,包括外部文件引入完成 onMove IE|N4|O 浏览器的窗口被移动时触发的事件onResize IE4|N4|O 当浏览器的窗口大小被改变时触发

JavaScript事件

我的记录(JavaScript事件)JavaScript 事件冒泡简介及应用实例 一、什么是事件冒泡 在一个对象上触发某类事件(比如单击onclick事件),如果此对象定义了此事件的处理程序,那么此事件就会调用这个处理程序,如果没有定义此事件处理程序或者事件返回true,那么这个事件会向这个对象的父级对象传播,从里到外,直至它被处理(父级对象所有同类事件都将被激活),或者它到达了对象层次的最顶层,即document对象(有些浏览器是window)。 打个比方说:你在地方法院要上诉一件案子,如果地方没有处理此类案件的法院,地方相关部门会帮你继续往上级法院上诉,比如从市级到省级,直至到中央法院,最终使你的案件得以处理。 二、事件冒泡有什么作用 (1)事件冒泡允许多个操作被集中处理(把事件处理器添加到一个父级元素上,避免把事件处理器添加到多个子级元素上),它还可以让你在对象层的不同级别捕获事件。 【集中处理例子】

控制台输出: keydown keypress keyup 2、浏览器的兼容性

(1)FireFox、Opera、Chrome 事件对应的函数有一个隐藏的变量e,表示发生事件。 e有一个属性e.which指示哪个键被按下,给出该键的索引值(按键码)。 静态函数String.fromCharCode()可以把索引值(按键码)转化成该键对应的的字符。eg: [html]view plaincopyprint? 1. 2. FireFox、Opera、Chrome中输入:a 输出:按键码:97 字符:a (2)IE IE不需要e变量,window.event表示发生事件。 window.event有一个属性window.event.keyCode指示哪个键被按下,给出该键的索引值(按键码)。 静态函数String.fromCharCode()可以把索引值(按键码)转化成该键对应的的字符。eg: [html]view plaincopyprint?

理解JavaScript中函数的使用

理解JavaScript中函数的使用 函数是进行模块化程序设计的基础,编写复杂的Ajax应用程序,必须对函数有更深入的了解。 JavaScript中的函数不同于其他的语言,每个函数都是作为一个对象被维护和运行的。通过函数对象的性质,可以很方便的将一个函数赋值给一个变量或者将函数作为参数传递。在继续讲述之前,先看一下函数的使用语法: function func1(…){…} var func2=function(…){…}; var func3=function func4(…){…}; var func5=new Function(); 这些都是声明函数的正确语法。它们和其他语言中常见的函数或之前介绍的函数定义方式有着很大的区别。那么在JavaScript中为什么能这么写?它所遵循的语法是什么呢?下面将介绍这些内容。 认识函数对象(Function Object) 可以用function关键字定义一个函数,并为每个函数指定一个函数名,通过函数名来进行调用。在JavaScript解释执行时,函数都是被维护为一个对象,这就是要介绍的函数对象(Function Object)。 函数对象与其他用户所定义的对象有着本质的区别,这一类对象被称之为内部对象,例如日期对象(Date)、数组对象(Array)、字符串对象(String)都属于内部对象。这些内置对象的构造器是由JavaScript本身所定义的:通过执行new Array()这样的语句返回一个对象,JavaScript内部有一套机制来初始化返回的对象,而不是由用户来指定对象的构造方式。 在JavaScript中,函数对象对应的类型是Function,正如数组对象对应的类型是Array,日期对象对应的类型是Date一样,可以通过new Function()来创建一个函数对象,也可以通过function关键字来创建一个对象。为了便于理解,我们比较函数对象的创建和数组对象的创建。先看数组对象:下面两行代码都是创建一个数组对象myArray: var myArray=[]; //等价于 var myArray=new Array();

实验项目21—JAVASCRIPT内置函数和对象

实验难点 实验内容实验目的 实验重点实验步骤 实验内容 1、JavaScript 内置函数的应用 2、JavaScript 内置对象的应用 3、JavaScript 浏览器对象的应用

实验难点实验内容实验目的实验重点实验步骤 实验目的 1、掌握JavaScript 内置函数的使用方法 2、掌握JavaScript 常用内置对象的属性和方法 3、掌握JavaScript 浏览器对象的含义 4、掌握使用浏览器对象提供的信息来完成一定功能的网页设计。

实验难点 实验内容实验目的实验重点实验步骤 实验重点 1、掌握JavaScript 内置函数的使用方法 2、掌握JavaScript 常用内置对象的属性和方法 3、掌握JavaScript 浏览器对象的含义

实验难点 实验内容实验目的实验重点 实验步骤 实验难点 1、掌握使用浏览器对象提供的信息来完成一定功能的网页设计。

实验难点 实验内容 实验目的 实验重点 实验步骤实验内容一:JavaScript 内置函数的应用 1、eval( ):计算字符串表达式的值 2、parseFloat( )和parseInt( ):将字符串开头的整数或浮点数分解出来,转换为整数或浮点数 3、isNaN( ):确定一个变量是否为NaN (Not a Number ) 4、escape( ):将字符串中的非字母数字字符转换为按格式%XX 表示的数字 5、unescape( ):将字符串格式为%XX 的数字转换为字符 6、程序案例1_1:求用户在提示对话框中输入的表达式的值。 7、思考题: 判断用户输入的字符是不是数字,如果是,分别将其转换成浮点数和整数,并显示到网页上。

javascript常用函数集

javascript常用函数集 javascript提供了许多函数供开发人员使用,下面给出一个简单介绍,更详细的信息请参考Visual InterDev提供的在线关心。 javascript函数一共可分为五类: ·常规函数 ·数组函数 ·日期函数 ·数学函数 ·字符串函数 1.常规函数 javascript常规函数包括以下9个函数: (1)alert函数:显示一个警告对话框,包括一个OK按钮。 (2)confirm函数:显示一个确认对话框,包括OK、Cancel按钮。 (3)escape函数:将字符转换成Unicode码。 (4)eval函数:运算表达式的结果。 (5)isNaN函数:测试是(true)否(false)不是一个数字。 (6)parseFloat函数:将字符串转换成符点数字形式。 (7)parseInt函数:将符串转换成整数数字形式(可指定几进制)。 (8)prompt函数:显示一个输入对话框,提示等待用户输入。例如: 你好!这是一个简单事件处理程序!

计算机科学与技术系 Web 前端开发技术 11.1 事件编程(续) 1.网页访问中常见的事件 鼠标单击:例如单击button 、选中checkbo x 和radio 等元素;鼠标进入、悬浮或退出页面的某个热点:例如鼠标停在一个图片上方或者进入table 的范围; 键盘按键:当按下按键或释放按键时;页面或图像载入:例如页面body 被加载时;在表单中选取输入框或改变输入框中文本的内容:例如选中或修改了文本框中的内容;确认表单:例如当准备提交表单的内容。 事件类型:1.鼠标事件2.键盘事件3.浏览器事件

Javascript事件

获取事件对象的全家 事件对象的获取很简单,很久前我们就知道IE中事件对象是作为全局对象( window.event )存在的,Firefox中则是做为句柄( handler )的第一个参数传入内的。所以一行代码就可以搞定 view sourceprint? 1var evt = window.event || arguments[0]; 下面分三种添加事件的方式讨论,你也许会看到以前没有看到过的获取方式。 1,第一种添加事件的方式,直接在html的属性中写JS代码 view sourceprint? 1

Div1 Element
大概这是上世纪90年代的写法,那时候直接把js代码写在网页中很普遍,也许那时候的js并不太重要,只是用来做做验证或一些花哨的效果而已。如何在这种添加事件方式下获取到事件对象?IE中很简单,因为event是作为全局对象的,所以直接使用event即可,如下 view sourceprint? 1
Div1 Element
点击该Div后,IE中会弹出'click'字符的信息框。说明事件对象获取到了,如果在 Opera/Safari/Chrome 中也测试了,会发现效果和IE一样,说明Opera/Safari/Chrome 中也支持IE方式( window.event )获取事件对象。 Firefox中会报错,提示:window.event is undefined,说明Firefox不支持IE方式获取事件对象而是以句柄的第一个参数传入的,文章开头意见提到了。 上面的用window.event 来获取事件对象,其实window可以省略的,就像使用alert而不是window.alert一样。如 view sourceprint? 1
Div1 Element
在IE/Opera/Safari/Chrome 中测试,和刚刚不会有什么区别。在Firefox中再测,会有个惊喜,你会发现居然弹出的是"click"信息框,而不是"undefined"。 两次测试区别仅仅一个用window.event.type,一个用event.type。这个问题下面详细讨论。

javascript的三种事件模型

事件使得客户端的 JavaScript 有机会被激活,并得以运行。在一个 Web 页面装载之后,运行脚本的唯一方式,就是响应系统或者用户的动作。虽然从第一个支持脚本编程的浏览器面世以来,简单的事件被实现为 JavaScript 的一部分;但是大多数最近出现的浏览器都实现了强壮的事件模型,使脚本可以更加智能地处理事件。现在的问题在于:为了支持各种浏览器,您必须和多个先进的事件模型做斗争,准确地说,是三个。 这三个事件模型分别和下面的文档对象模型(Document Object Model,即 DOM)三巨头结盟:Netscape Navigator 4 (NN4),Macintosh 和 Windows 系统的Internet Explorer 4 及其更新版本(IE4+),以及在 Safari 中得到实现的 W3C DOM。尽管这些模型之间有些地方存在一些本质的差别,但是在一些简易的JavaScript 的帮助下,它们都可以同时适用于同一个文档。本文主要着眼于相互冲突的事件模型中的两个关键方面: * 把一个事件和 HTML 元素绑定起来的方法。 * 在事件被触发后如何对之进行处理。 事件绑定的方法 事件绑定是指构造一个响应系统或者用户动作的 HTML 元素的过程。在不同的浏览器版本中,有不少于五种事件绑定技术。下面我们快速地介绍一下这些技术。 事件绑定方法I:绑定元素属性 最简单和向后兼容性最好的事件绑定方法是把事件绑定到元素标识的属性。事件属性名称由事件类型外加一个“on”前缀构成。尽管HTML属性并不是大小写敏感的,人们还是定义了一个规则,规定事件类型的每一个“词”的首字母大写,比如 onClick 和 onMouseOver。这些属性也被称为事件处理器,因为它们指示了元素如何“处理”特定的事件类型。

项目18—JAVASCRIPT内置对象和函数

教学方法教学目标教学重点教学难点 教学过程 教学目标 1、掌握JavaScript 内置函数的应用 2、掌握JavaScript 内置对象的应用 3、掌握JavaScript 浏览器对象的应用

教学方法教学目标教学重点 教学难点 教学过程 教学重点 1、掌握JavaScript 内置函数的使用方法 2、掌握JavaScript 常用内置对象的属性和方法 3、掌握JavaScript 浏览器对象的含义

教学方法教学目标教学重点 教学难点 教学过程 教学难点 1、掌握使用浏览器对象提供的信息来完成一定功能的网页设计。

教学方法教学目标教学重点 教学难点 教学过程 教学方法 1、项目工程互动式教学法 2、“讲、学、观察”相结合

教学方法教学目标教学重点教学难点教学过程 一、JavaScript 内置函数的应用 JavaScript 中的系统函数又称内部方法。它提供了与任何对象无关的系统函数,使用这些函数不需创建实例,可以直接用。 1、eval( ):计算字符串表达式的值 2、parseFloat( )和parseInt( ):将字符串开头的整数或浮点数分解出来,转换为整数或浮点数 3、isNaN( ):确定一个变量是否为NaN (Not a Number ) 4、escape( ):将字符串中的非字母数字字符转换为按格式%XX 表示的数字 5、unescape( ):将字符串格式为%XX 的数字转换为字符

教学方法 教学目标教学重点教学难点 教学过程 6、程序案例1:求用户在提示对话框中输入的表达式的值。 eval( )内置函数的用法:计算字符串表达式的值。

javaScript,页面自动加载事件详解

javaScript,页面自动加载事件详解 篇一:javascript 动态添加事件 往往我们需要在 JS 中动态添加事件,这就涉及到浏览器兼容性问题了,以下谈及的几 种方法,我们也常常混合使用。 方法一、setAttribute var obj = document.getElementById("obj"); obj.setAttribute("onclick", "javascript:alert('测试');"); 这里利用 setAttribute 指定 onclick 属性,简单,很好理解, 但是: IE 不支持, IE 并不是不支持 setAttribute 这个函数, 而是不支持用 setAttribute 设 置某些属性, 包括对象属性、 集合属性、 事件属性, 也就是说用 setAttribute 设置 style、 onclick、 onmouseover 这些属性在 IE 中是行不通的。 LEO:在 IE6 下尝试成功 方法二、用 attachEvent 和 addEventListener IE 支持 attachEvent obj.attachEvent("onclick", Foo); function Foo() { alert("测试"); } 也可写在一起 obj.attachEvent("onclick", function(){alert("测试");}); 其它浏览器支持 addEventListener obj.addEventListener("click", Foo, false); function Foo() { alert("测试"); } 同样也可写在一起 obj.addEventListener("click", function(){alert("测试");}, false); 注意 attachEvent 的事件带 on,如 onclick,而 addEventListener 不带 on,如 click。 顺便说一下 addEventListener 的第三个参数(虽然很少用) useCapture - 如果为 true, 则 useCapture 指示用户希望启动捕获。启动捕获后,所有指定类型的事件将在被指派到树中 其下面的任何 EventTargets 之前指派给已注册的 EventListener。 正在通过树向上 bubbling 的 事件将不触发指定的使用捕获的 EventListener。 1 / 11

javascript如何封装函数

本文由我司收集整编,推荐下载,如有疑问,请与我司联系 javascript 如何封装函数 2017/02/28 81 通常写js 组件开发的,都会用到匿名函数的写法去封装一个对 象,与外界形成一个闭包的作用域。封装,全天下漫天遍野的封装,JQuery,EXT 和Prototype.js 封装的是javascript,jQuery uI 和jQuery mobile 封装着jQuery,java 中的JDBC 在spirng,Hibernate 等框架封装着。 1 !doctype html 2 html lang=“en” 3 head 4 meta charset=“UTF-8” 5 meta name=“viewport”content=“width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0” 6 meta http-equiv=“X-UA-Compatible”content=“ie=edge” 7 title Document /title 8 /head 9 body 10 script type=“text/javascript”11 var beibei = {12 init:function () {13 console.log(‘come in here!’);15};16 beibei.init();18 //构造函数19 function Person() {20 https://www.doczj.com/doc/9910706636.html, = “beibei”;21 this.age = 26;22 this.getName = function () {23 return https://www.doczj.com/doc/9910706636.html,;26 var person = new Person();27 console.log(person.age);28 console.log(person.getName());30 function Person(name,age) {31 https://www.doczj.com/doc/9910706636.html, = name;32 this.age = age;33 this.getName = function () {34 return https://www.doczj.com/doc/9910706636.html,;38 var p1 = new Person(“beibei”,10);39console.log(https://www.doczj.com/doc/9910706636.html,);40 console.log(p1.age);41 console.log(p1.getName());43 //这样写是没问题的但是有一点 缺陷就是每个对象都维护相同的方法实例而其实它们可以共享此方法而不必每 个对象都生成此实例44 //在java 语言中面向对象的思想中有一条“继承”既然此方 法对于每个对象来说是公用的那么可以在它的父类中实现45 //在javascript 中继承 是基于原型对象的继承在原型对象中实现此方法,那么每个对象调用次方法时首 先查看自己是否有此方法如果有调用自己的方法46 //如果没有去原型对象中查 询调用原型对象的方法是不是和java 中的继承差不多呢?这是修改后的代码。 48 function Person(name,age) {49 https://www.doczj.com/doc/9910706636.html, = name;50 this.age = age;53 Person.prototype.getName = function () {54 return https://www.doczj.com/doc/9910706636.html,;57 var p1 = new Person(“beibei”,10);58console.log(https://www.doczj.com/doc/9910706636.html,);59 console.log(p1.age);60 console.log(p1.getName());62 //对象字面量的形式构造对象63 var p1 = {64

JavaScript事件处理

JavaScript事件处理,使用框架和Cookies 2008-01-04 20:53 事件处理 事件处理概述 事件处理是对象化编程的一个很重要的环节,没有了事件处理,程序就会变得很死,缺乏灵活性。事件处理的过程可以这样表示:发生事件 - 启动事件处理程序 - 事件处理程序作出反应。其中,要使事件处理程序能够启动,必须先告诉对象,如果发生了什么事情,要启动什么处理程序,否则这个流程就不能进行下去。事件的处理程序可以是任意 JavaScript 语句,但是我们一般用特定的自定义函数(function)来处理事情。 指定事件处理程序 指定事件处理程序有三种方法: 方法一直接在 HTML 标记中指定。这种方法是用得最普遍的。方法是: <标记 ... ... 事件="事件处理程序" [事件="事件处理程序" ...]> 让我们来看看例子: 这样的定义标记,能使文档读取完毕的时候弹出一个对话框,写着“网页读取完成,请慢慢欣赏”;在用户退出文档(或者关闭窗口,或者到另一个页面去)的时候弹出“再见”。 方法二编写特定对象特定事件的 JavaScript。这种方法用得比较少,但是在某些场合还是很好用的。方法是: 例: 方法三在 JavaScript 中说明。方法: <事件主角 - 对象>.<事件> = <事件处理程序>;

javascript自定义事件模型及实现

在js世界里,事件可谓是个大课题,在此讨论的自定义事件也只是冰山一角。 试想这样的场景,页面中有A、B两个模块,B模块显示的时候,会同时隐藏A模块。按照这个流程的代码,经常会是这样的代码: 这样代码的问题在于太过于流程化,B模块内置了对A模块的依赖,耦合度高。如果要让B模块独处到另外的页面工作,就会找不到A模块而无法使用。又或者需求变化,B模块显示的时候,同时显示一个新的C模块,那又要去B模块里添加代码,最后B模块只会依赖越来越多,越陷越深,无法自拔啊。 为了让模块间解耦,通常,会把逻辑代码抽离到一个回调函数中,通过配置去指挥代码所需要的处理。

以回调的方式,实现一个原始的类似事件的订阅方式,可以把对外部依赖的代码逻辑通过配置的方式移出模块内,实现上也很简单,可以不依赖于任何机制。 但与此同时,也存在着一定的局限性,比如只能在初始化的时候配置;不能多次添加“监听”;每个需要事件回调的方法都需要添加一个回调事件。 自定义事件 如果以“写分享”这么一个事件来比喻,最开始的那种流程式的方式就好比,分享者每周写了一篇分享,并通过邮件A、B、C等N各人,分享者需要自己维护每个同学的邮件地址。要是有一天,

哪个同事离职了,还要从收件人里把他删掉,分享者跟邮件联系人耦合度很高。 而到了采用回调式的方式,就好比分享者发分享时不再需要记得有哪些人,分享者有一个收件人的群组,每次写完就往这个群组里发,不必再关心群组里有哪些人和那些人的去向。由外部去维护这么一个联系人群组。 但对于时刻想偷懒的人来说,这个还不是最方便了,于是,有了一种新的方式,写好的分享,发表到博客中,有兴趣看分享的人去加关注。于是,就有了下面的故事:

JAVASCRIPT面向对象基础总结

javascript面向对象基础 1.使用[]调用对象的属性和方法 functionUser() { this.age=21; this.sex="男?"; } varuser=newUser(); alert(user["age"]); 2.动态添加,修改,删除对象的属性和方法//定义类varuser=newObject(); //添加属性和方法 https://www.doczj.com/doc/9910706636.html,="cary"; user.age=21; user.show=function(){ alert(https://www.doczj.com/doc/9910706636.html,+"年?龄?为?:?"+this.age);} //执行方法 user.show(); //修改属性和方法 https://www.doczj.com/doc/9910706636.html,="James"; user.show=function() { alert(https://www.doczj.com/doc/9910706636.html,+"你?好?"); } //执行方法 user.show(); //删除属性和方法 https://www.doczj.com/doc/9910706636.html,="undefined"; user.show="undefined" //执行方法 user.show(); 3.使用大括号{}语法创建无类型对象varobj={}; varuser= { name:"cary", age:21,

show:function(){ alert(https://www.doczj.com/doc/9910706636.html,+"年?龄?为?:?"+this.age); } } user.show(); varobj={};等价于 varobj=newObject(); 4.Prototype原型对象 每个函数function也是一个对象,对应的类类型为“Function”,每个函数对象都有一个子对象prototype,表示函数的原型,所以当我们new一个类的对象的时候prototype对象的成员都会被实例化为对象的成员。例如: functionclass1() {} class1.prototype.show=function(){ alert("prototyemember"); } varobj=newclass1(); obj.show(); 5.Function函数对象详解 5.1Function和Date,Array,String等一样都属于JavaScript的内部对象,这些对象的构造器是由JavaScript本身所定义的。上面说过函数对象对应的类型是Function,这个和数组的对象是Array一个道理。所以也可以像newArray()一样newFunction()来创建一个函数对象,而函数对象除了使用这种方式还可以使用function关键字来创建。我们之所以不经常使用newFunction()的方式来创建函数是因为一个函数一般会有很多语句,如果我们将这些都传到newFunction()的参数中会显得可读性比较差。varfunctionName=newFunction(p1,p2,...,pn,body)其中p1到pn为参数,body为函数体。 5.2有名函数和无名函数 有名函数:functionfuncName(){}无名函数:varfuncName=function(){}他们之间的唯一区别:就是对于有名函数他可以出现在调用之后再定义,而对于无名函数,他必须是在调用之前就已经定义好。 5.3我们可以利用Function的prototype对象来扩展函数对象,如: Function.prototype.show=function(){ alert("扩展方法"); }

相关主题
文本预览
相关文档 最新文档