位置: 编程技术 - 正文

javascript学习笔记(四)function函数部分(javascript教程完整版)

编辑:rootadmin

推荐整理分享javascript学习笔记(四)function函数部分(javascript教程完整版),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:javascript入门教程,javascript基础笔记,javascript教程推荐知乎,javascript教程,javascript怎么学,javascript如何学,javascript教程推荐知乎,javascript入门教程,内容如对您有帮助,希望把文章链接给更多的朋友!

函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块。Jscript 支持两种函数:一类是语言内部的函数(如eval() ),另一类是自己创建的。

在 JavaScript 函数内部声明的变量(使用 var)是局部变量,所以只能在函数内部访问它。(该变量的作用域是局部的)。

您可以在不同的函数中使用名称相同的局部变量,因为只有声明过该变量的函数才能识别出该变量。

函数的调用方式

1、普通调用:functionName(实际参数...)

2、通过指向函数的变量去调用:  

var myVar = 函数名;

myVar(实际参数...);

返回函数的函数

  1. 当函数无明确返回值时,返回的值就是"undefined"。

  2. 当函数有返回值时,返回值是什么就返回什么。

我们可以通过使用 return 语句实现将函数返回调用它的地方。

在使用 return 语句时,函数会停止执行,并返回指定的值。

函数通常会返回一个唯一值,那么这个值也可能是另一个函数:

在这里,我们只需将返回值赋值给某个变量,然后就可以像使用一般函数那样调用它了:

如果想让返回的函数立即执行,亦可以使用box()()来执行这段代码。

ECMAScript所有函数的参数都是按值传递的,言下之意就是参数不会按引用传递。

PS:如果存在按引用传递的话,那么函数里的那个变量将会是全局变量,在外部也可以访问。

(1)值类型:数值、布尔值、null、undefined。(2)引用类型:对象、数组、函数。

引用类型值:指的是那些保存在堆内存中的对象,意思是,变量中保存的实际上只是一个指针,这个指针执行内存中的另一个位置,由该位置保存对象;创建匿名函数

这种匿名函数的用法在JQuery中非常多。直接声明一个匿名函数,立即使用。用匿名函数的好处就是省得定义一个用一次就不用的函数,而且免了命名冲突的问题,js中没有命名空间的概念,因此很容易函数名字冲突,一旦命名冲突以最后声明的为准。

通过自我执行来执行匿名函数:

把匿名函数自我执行的返回值赋给变量:

自我执行匿名函数的传参:

javascript创建动态函数:

  JavaScript支持创建动态函数,动态函数必须用Function对象来定义(Function是javascript中的一个对象,是固定不变的,规定Function对象的"F"必须大写,当是function的时候,我们知道是定义函数的时候所使用的一个关键字:function funName(x,y),当是Function的时候(F大写的时候),我们知道是javascript中的对象)

创建动态函数的基本格式:var 变量名 = new Function("参数1","参数2","参数n","执行语句");看下面的一段代码:

square是动态创建的函数,在Function对象后面的括号里的每一部分内容都必须是字符串形式的,也就是说都必须用引号(""或者是'')括起来

这段代码:

var square = new Function ("x","y","var sum ; sum = x+y;return sum;");和下面这段代码:

是一摸一样的,只不过一个是动态函数,一个是静态函数。我们为什么要把代码分成一小段一小段的代码呢?,把一个字符串分成了若干个独立的字符串的优点就在于我们可以通过修改其中的某些字符串来随时改变函数的作用。

回调函数

回调就是一个函数的调用过程。那么就从理解这个调用过程开始吧。函数a有一个参数,这个参数是个函数b,当函数a执行完以后执行函数b。那么这个过程就叫回调。

javascript学习笔记(四)function函数部分(javascript教程完整版)

其实中文也很好理解:回调,回调,就是回头调用的意思。函数a的事先干完,回头再调用函数b。

这里必须清楚一点:函数b是你以参数形式传给函数a的,那么函数b就叫回调函数。

在jquery里的绝大多数效果函数都涉及到callback函数。jquery效果函数例如:

这里的callback function换成实例可以是:

Callback实际上是,当一个函数执行完后,现执行的那个函数就是所谓的callback函数。怎么样?很好理解吧……

方法和函数的区别

其实方法就是函数,只不过方法是有所属的对象。

我们所熟知的,将函数绑定到 click 事件语法:

$(selector).click(function)参数 描述function 可选。规定当发生 click 事件时运行的函数。这种形式在jquery中经常见到。它是将function当做该方法的参数,向该方法添加一个事件处理函数。

js全局函数

全局函数与内置对象的属性或方法不是一个概念。全局函数它不属于任何一个内置对象。JavaScript 中包含以下 7 个全局函数,用于完成一些常用的功能:

escape( )、eval( )、isFinite( )、isNaN( )、parseFloat( )、parseInt( )、unescape( )。函数的几个作用

作为一个类构造器使用

作为闭包使用

作为构造函数调用

所谓构造函数,就是通过这个函数生成一个新对象(object)。

可以使用 new 运算符结合像 Object()、Date() 和 Function() 这样的预定义的构造函数来创建对象并对其初始化。面向对象的编程其强有力的特征是定义自定义构造函数以创建脚本中使用的自定义对象的能力。创建了自定义的构造函数,这样就可以创建具有已定义属性的对象。下面是自定义函数的示例(注意 this 关键字的使用)。

调用 Circle 构造函数时,给出圆心点的值和圆的半径(所有这些元素是完全定义一个独特的圆对象所必需的)。结束时 Circle 对象包含三个属性。下面是如何例示 Circle 对象。

var aCircle = new Circle(5, , );使用构造器函数的好处在于,它可以再创建对象时接收一些参数。

依照惯例,我们应该将构造器函数的首字母大写,以便显著地区别于一般的函数。

以下两种形式的定义函数方式是等价的。

这里明确定义了一个变量test,他的初始值被赋予了一个function实体

看看下面这种定义式函数形式:

很显然,第一个函数并没有起到作用,很奇怪不是吗?我们知道,javascript解析引擎并不是一行一行地执行代码,而是一段一段地执行代码。在同一段程序的分析执行中,定义式的函数语句会被优先执行,所以第一个定义的代码逻辑已经被第二个覆盖了,所以两次调用相同函数,只会执行第二个。

作为值的函数

函数在js中不仅是一种语法,也是一个值。也就是说可以将函数赋值给变量,存储在对象的属性或数组的元素中,作为参数传入另一个函数中。函数的名字实际是看不见的,它仅仅是变量的名字,这个变量指代函数对象

除了可以将函数赋值给变量,同样可以将函数赋值给对象的属性,当函数作为对象的属性调用时,函数就称为方法

prototype属性

每一个函数都包含prototype属性,这个属性指向一个对象的引用,这个对象称为原型对象。详见:javascript学习笔记(五)原型和原型链

高阶函数

这里的高阶函数可不是高数里的那个高阶函数,所谓高阶函数就是操作函数的函数,它接收一个或多个函数作为参数,并返回新函数

javascript学习笔记(五)原型和原型链详解 私有变量和函数在函数内部定义的变量和函数,如果不对外提供接口,外部是无法访问到的,也就是该函数的私有的变量和函数。scripttype="text/javascript"f

javascript学习笔记(六)数据类型和JSON格式 什么是JSONJSON:JavaScript对象表示法(JavaScriptObjectNotation)。JSON的形式是用大括号{}包围起来的项目列表,每一个项目间用逗号(,)分隔,而项目就是用

javascript学习笔记(七)Ajax和Http状态码 Ajax及其工作原理AJAX是一种与服务器交换数据无需刷新网页的技术,最早由Google公司在谷歌地图里使用,并迅速风靡。AJAX是不能跨域的,如需跨域,可

标签: javascript教程完整版

本文链接地址:https://www.jiuchutong.com/biancheng/385655.html 转载请保留说明!

上一篇:javascript学习笔记(三)BOM和DOM详解(javascript基础笔记)

下一篇:javascript学习笔记(五)原型和原型链详解(javascript学习指南)

  • 赠送给客户的库存商品怎么做账
  • 个人所得税财产租赁所得税率表
  • 个人出租不动产税率
  • 差额纳税是什么税
  • 公立幼儿园保育员好进吗
  • 发票密码区超出可以用吗
  • 咨询费是否纳印花税
  • 小汽车的增值税怎么算
  • 自然人合伙企业怎么交税
  • 营改增之后对企业的影响
  • 库存商品期末要结转吗
  • 收到某公司发票会计分录
  • 小规模异地预缴增值税
  • 职工福利费在期间费用表中怎么填
  • 2018水利基金税率是多少?怎么算
  • 单品销售的方法
  • 转让商业承兑汇票显示银行拒绝交易
  • 代理销售怎么记账
  • 控股子公司是
  • 物流企业之间的竞争
  • 上个月多计提的工资怎么调整
  • 商贸公司如何结算成本
  • php正则匹配字符串
  • php上传大文件失败
  • php7 ??
  • kb4577266补丁
  • win10输入法没有候选词
  • php获取文件内容的函数
  • mac vue搭建本地环境
  • vue调用后端接口的方法
  • 无法支付的货款如何处理
  • yii框架运行原理
  • 微擎框架是开源的吗
  • 总包缴税
  • 什么情况下需要异地预缴增值税
  • 哪些公司不交五险一金
  • 一切皆对象什么意思
  • 人力资源公司代办
  • Sqlite 操作类代码
  • 跨年度退回的公共预算支出
  • 专家评审费属于咨询费吗
  • 公司支付的工伤待遇包括哪些
  • 车辆保险费如何缴纳印花税的
  • 营业外收入如何开票
  • 施工单位名称变更需不需要单独做一个联络函
  • 应收账款余额要包含应收票据吗
  • 固定资产抵债交不交增值税
  • 建筑企业预缴增值税款
  • 退货与销售折让的区别
  • 4s店收取保险服务费合理吗
  • 物流公司的会计怎么样
  • 股东增资有哪几种方法
  • 会计凭证传递的组织工作主要包括
  • 配置是什么意思
  • debian10.6安装教程
  • mac系统操作的小技巧
  • linux pptp客户端
  • solaris 创建文件
  • solaris教程
  • vmware安装macos10.15
  • linux 命令
  • centos查看当前yum源
  • bash.exe
  • win7盘符不见了
  • centos6.8升级centos7
  • vs图片简单
  • win8待机后无法唤醒
  • vivo渠道服容易被找回吗
  • win7开启路由功能
  • [置顶] [寒江孤叶丶的Cocos2d-x之旅_29]在Cocos2d-x中集成protobuf (Protocol Buffers)
  • combobox 添加选项
  • python添加图片
  • python def用法理解
  • js怎么检查错误
  • 统计一组数据各个数字出现的次数
  • unity 控件
  • javascript设计
  • window.showModalDialog谷歌不兼容
  • 北京国税电子税务局
  • 税务系统个人业务自传
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设