JavaScript中Function函数
Function是javascript里最常用的一个概念,javascript里的function是最容易入手的一个功能,但它也是javascript最难理解最难掌握的一个概念。
今天我们来尝试理解Function和Object.因为这个里面有些人前期可能会搞糊涂.他们之间到底是什么关系.当然也不除外当初的我.
注意:官方定义: 在Javascript中,每一个函数实际上都是一个函数对象.
我们先来看最简单的两个代码,也是最容易理解的.
function fn(){}var obj = {}(fn instanceof Function)//(obj instanceof Object)//(fn instanceof Object)//(obj instanceof Function)//false
前面两个打印的效果,大家都容易理解.后面 fn instanceof Object 是为true.这里也是一样,从函数的定义来说: 在javascript中一切函数实际都是函数对象. 所以为true就不奇怪了 instanceof Function 为false,当然不奇怪了.因为他是一个对象,不是函数.
我们再来看一个代码
(Function instanceof Object); // (Object instanceof Function); // true
代码很简单.运行结构两个都是为true,为什么呢? 第一个用函数的定义来说,(javascript中函数实际也是一个函数对象),当然为true,那第二个呢?对象也是函数?
Object也是函数.因为Object的结构是function Object(){native code}.
这种形式,很清晰的就是声明的一个Object函数,当然就是函数了,所以两个都是为true.
他们两个Function和Object函数实现代码,那当然是不一样了.他们是怎么实现的',那我们就不去详细琢磨了,如果想琢磨的,就可以了解浏览器的相关知识了.
ps:$(function(){})和$(document)y(function(){})
y和onload的区别——JavaScript文档加载完成事件
页面加载完成有两种事件
一是ready,表示文档结构已经加载完成(不包含图片等非文字媒体文件)
二是onload,指示页面包含图片等文件在内的所有元素都加载完成。
用jQ的人很多人都是这么开始写脚本的:
$(function(){// do something});
其实这个就是jq ready()的简写,他等价于:
$(document)y(function(){//do something})//或者下面这个方法,jQuer的默认参数是:“document”;$()y(function(){//do something})
这个就是jq ready()的方法就是Dom Ready,他的作用或者意义就是:在DOM加载完成后就可以可以对DOM进行操作。
一般情况先一个页面响应加载的顺序是:域名解析-加载html-加载js和css-加载图片等其他信息。
那么Dom Ready应该在“加载js和css”和“加载图片等其他信息”之间,就可以操作Dom了。
ad方法
⑴执行时机:
在网页中所有元素(包括元素的所有关联文件)完全加载到浏览器后才执行,即JavaScript 此时可以访问网页中的所有元素。
ad=function(){ $(window)(function(){//编写代码 等价于 //编写代码} });
⑵多次使用:
JavaScript的onload事件一次只能保存对一个函数的引用,他会自动用最后面的函数覆盖前面的函数。
function one(){ alert("one");} function two(){ alert("two"); }ad=one; ad=two; //运行代码后只有 two
2.$(document)y()方法
⑴执行时机:在DOM完全就绪时就可以被调用。(这并不意味着这些元素关联的文件都已经下载完毕)
举个例子:$(document)y()方法明知要DOM就绪就可以操作了,不需要等待所有图片下载完毕。
⑵多次使用:
function one(){ alert("one"); } function two(){ alert("two"); } $(document)y(function(){ one(); }); $(document)y(function(){ two(); }); //运行代码后 //先是:one //先是:two
-
浅析JavaScript基本类型与引用类型
两种类型:ECMAScript变量包含两种不同类型的值:基本类型值、引用类型值;基本类型值:指的是保存在栈内存中的简单数据段;引用类型值:指的是那些保存在堆内存中的`对象,意思是,变量中保存的实际上只是一个指针,这个指针指向内存中的另一个位置,由该位置保存对象;两种访问方...
-
PHP开发工程师的主要职责
PHP开发工程师的主要职责1职责:1、负责公司后端的研发,保障系统的稳定性和质量2、与业务需求部门及项目经理沟通,理解需求,进行架构设计;3、搭建开发框架、负责核心代码的编写,解决技术难点;4、界定、分析和解决系统中存在的问题和缺陷;5、对系统进行持续改进,提升系...
-
JavaScript弹窗基础教程
confirm()意既确认框confirm...
-
asp.net 操作INI文件读写类实例代码
操作INI文件读写类实例代码复制代码代码如下:usingSystem;usingropServices;using;using;namespaceCommon{//////INI文件读写类。///publicclassINIFile{publicstringpath;publicINIFile(stringINIPath){path=INIPath;}[DllImport("kernel32")]privatestaticex...
相关文章
- JavaScript中push(),join() 函数实例详解
- 托福英语写作范文:Examinations exert a pernicious influence on educat
- javascript之Function对象学习小结
- JavaScript instanceof 的使用方法有哪些
- java如何利用java.net.URLConnection发送HTTP请求
- javascript中(function{})()写法解析
- 高中英语作文:My approach to difficulties in learning
- javascript中Function类型详细介绍
- 浅析javascript中function 的length属性
- 万恶的function在javascript中的运用实例分析