登录  /  注册
首页 > web前端 > js教程 > 正文

javascript如何使用函数和返回值用法实例详解

伊谢尔伦
发布: 2018-05-19 15:27:11
原创
2729人浏览过

在javascript中,函数可以 
◆ 被赋值给一个变量 
◆ 被赋值为对象的属性 
◆ 作为参数被传入别的函数 
◆ 作为函数的结果被返回 

赋值给一个变量: 

//声明一个函数,接受两个参数,返回其和 
function add(x, y){ 
return x + y; 
} 
var a = 0; 
a = add;//将函数赋值给一个变量 
var b = a(2, 3);//调用这个新的函数a 
print(b);
登录后复制

这段代码会打印”5”,因为赋值之后,变量a引用函数add,也就是说,a的值是一个函数对象(一个可执行代码块),因此可以使用a(2, 3)这样的语句来进行求和操作。
赋值为对象的属性:

var obj = { 
id : "obj1" 
} 
obj.func = add;//赋值为obj对象的属性 
obj.func(2, 3);//返回5
登录后复制

事实上,这个例子与上个例子的本质上是一样的,第一个例子中的a变量,事实上是全局对象(如果在客户端环境中,表示为window对象)的一个属性。而第二个例子则为obj对象,由于我们很少直接的引用全局对象,就分开来描述。
作为参数传递:

//高级打印函数的第二个版本 
function adPrint2(str, handler){ 
print(handler(str)); 
} 
/将字符串转换为大写形式,并返回 
function up(str){ 
return str.toUpperCase(); 
} 

//将字符串转换为小写形式,并返回 
function low(str){ 
return str.toLowerCase(); 
} 

adPrint2("Hello, world", up); 
adPrint2("Hello, world", low);
登录后复制

运行此片段,可以得到这样的结果:

HELLO, WORLD 
hello, world
登录后复制

应该注意到,函数adPrint2的第二个参数,事实上是一个函数,将这个处理函数作为参数传入,在adPrint2的内部,仍然可以调用这个函数,这个特点在很多地方都是有用的,特别是,当我们想要处理一些对象,但是又不确定以何种形式来处理,则完全可以将“处理方式”作为一个抽象的粒度来进行包装(即函数)。
作为函数的返回值:
先来看一个最简单的例子:

function currying(){ 
return function(){ 
print("curring"); 
} 
}
登录后复制

函数currying返回一个匿名函数,这个匿名函数会打印”curring”,简单的调用currying()会得到下面的结果:

function (){ 
print("curring"); 
}
登录后复制

如果要调用currying返回的这个匿名函数,需要这样: 
currying()(); 
第一个括号操作,表示调用currying本身,此时返回值为函数,第二个括号操作符调用这个返回值,则会得到这样的结果: 
currying

以上就是javascript如何使用函数和返回值用法实例详解的详细内容,更多请关注php中文网其它相关文章!

智能AI问答
PHP中文网智能助手能迅速回答你的编程问题,提供实时的代码和解决方案,帮助你解决各种难题。不仅如此,它还能提供编程资源和学习指导,帮助你快速提升编程技能。无论你是初学者还是专业人士,AI智能助手都能成为你的可靠助手,助力你在编程领域取得更大的成就。
相关标签:
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
关于CSS思维导图的课件在哪? 课件
凡人来自于2024-04-16 10:10:18
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2024 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号