`
schy_hqh
  • 浏览: 552330 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

javascript中的函数

 
阅读更多

 

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
	<script type="text/javascript">
		/*
		javascript中的函数---功能的封装 
			1.入参,如果有,则传入,而且 参数不能使用var定义 
			2.执行结果,可以有返回值,也可以没有返回值,而且不需要定义返回值类型,因为javascript是弱类型语言,返回类型就是var类型  
			
		定义函数
		function  函数名(参数列表) {
			函数体
			return 结果;//如果没有返回值,则省略 return语句
		}
		
		*/
		
		//封装的打印函数
		function sop(data) {
			document.write("<br/>");
			document.write(data);
			document.write("<br/>");
		}
		
		//参数不能使用var定义,直接列出参数即可 
		function add(a,b) {
			return a+b;
		}
		
		var result = add(1,2);
		sop(result);
		
	</script>
	
	<script type="text/javascript">
	
		//函数的细节
		
		//细节一,如果多个函数的函数 名相同,则按书写顺序执行最后的那个函数,前面的函数相当于被 覆盖了
		//下面的执行结果都是 :new ... show
		show();
		function show() {
			sop("old ... show");
		}
		show();
		function show(x) {
			sop("new ... show");
		}
		show();
		
		
		//细节二: javascript中的函数不存在重载,而且每个函数中都持有一个对象 ,arguments---数组 
		//arguments数组 保存了 调用函数时传入的参数 ,该数组 的长度根据调用者传入的参数个数 决定,与函数的参数列表个数 无关
		//arguments数组中存储元素的顺序与 调用者传入参数的顺序一致 
		function test() {
			sop("空 ");
			sop(arguments.length);
		}
		
		function test(x) {
			sop("x,y");
			sop(arguments.length);
		}
		
		function test(x,y) {
			sop("2 parmas");
			sop(arguments.length);
			sop(x);
			sop(y);
		}
		
		//首先,函数调用与 函数 的形式 参数 无关 ,后面的函数 会 覆盖前面的函数 ,所以调用 test(x,y)
		//然后 ,因为没有传入参数 ,所以 test(x,y)中的参数都是 undefined 
		test();
		
		
		//细节三:函数即对象  函数名相当于该 对象在内存中的引用
		//调用函数必须在后面跟括号才能调用 
		function getSum() {
			return 10;
		}
		
		var sum = getSum;//函数没有执行,而是将函数的地址(对象的引用 )赋值给了另一个变量 
		sop(sum);//输出的是函数的字符串形式  ,相当于调用了一个toString()将函数中的代码进行了打印  
		sop(sum());//相当于调用getSum()
		
		
	</script>
	
	<script type="text/javascript">
		//动态函数---javascript中内置的一个对象Function 
		//参数列表和函数体都是通过字符串指定的,这样就能根据不同情况创建不同的函数 ,实现动态的效果 
		
		var func = new Function("x,y","var sum=x+y; return sum;");
		var sum = func(1,2);
		sop("sum="+sum);
		
		//应用: 通过服务端传回字符串来动态定义函数,与eval()功能 类似 ,都是把字符串转换为javascript命令 
		var params = "a,b,c"; //入参
		var functionBody = "var retVal = a*b*c; return retVal";//函数代码 		
		var funct = new Function(params,functionBody);//根据字符串创建函数 
		var value = funct(2,3,4);//调用函数 
		sop("value="+value);
		
	</script>
	
	<script type="text/javascript">
		//函数的另一种定义方式,左边使用一个变量记录函数对象的引用,右边定义一个匿名函数 
		//如果匿名函数对象没有被事件绑定,或者没有被另外的变量记录其引用,程序会报错 
		
		//定义一个变量来记录匿名函数的引用,后面通过这个变量来操作该匿名函数
		var myFunc = function(x,y) {
			alert("x+y="+(x+y));//这个alert()在 window.unload事件发生 之前弹出 
			document.write("x+y="+(x+y));
			return x+y;
		}
		
		var retVal = myFunc(1,2);
		sop("retVal="+retVal);
		
		//将匿名函数绑定到一个事件上 
		window.onload = function() {
			alert("所有资源都加载完成 , 脚本都执行完毕 ,unload事件才发生 !");
		}
	</script>
</head>
<body>

</body>
</html>

 

分享到:
评论

相关推荐

    JavaScript中函数对象调用模式总结

    JavaScript中的函数对象调用模式是编程中至关重要的概念,它涉及到函数作为一等公民、作用域、闭包、原型链等多个核心知识点。这篇博客通过深入分析JavaScript中的函数调用模式,帮助开发者更好地理解和掌握这些概念...

    JavaScript中函数与对象的解析.pdf

    JavaScript 中函数与对象的解析 JavaScript 中的函数与对象是掌握 JavaScript 语 言的基础。JavaScript 语 言与 C++、Java 等语 言在语法上类似,但其函数具有独特性。本文将深入了解 JavaScript 语言中的函数与...

    理解JavaScript中函数的使用

    ### 理解JavaScript中函数的使用 在现代软件开发中,JavaScript已成为不可或缺的一部分,尤其在Web前端领域更是举足轻重。对于开发者而言,掌握JavaScript中的函数使用至关重要,因为函数是实现模块化编程的基础之...

    一本关于JavaScript中函数式编程的书

    这在递归函数中特别有用,可以提高性能。 八、函数式库 JavaScript有许多函数式编程库,如Ramda和Lodash的FP模式,它们提供了丰富的函数式工具,简化了编写函数式代码的过程。 九、惰性求值 虽然JavaScript本身不...

    【JavaScript源代码】Javascript中函数分类&this指向的实例详解.docx

    在这个例子中,每个按钮的点击事件都会打印出自己的索引号,而不是最后一个按钮的索引号,这是因为`bind`改变了事件处理函数中的`this`指向。 #### 五、结论 通过本文的讲解和示例,我们可以看到JavaScript中的...

    JavaScript的函数式编程基础指南

    这些函数可以被传递给其他函数,例如在高阶函数中,也可以作为其他函数的结果返回。这种能力使得JavaScript具备了函数式编程的基本特征。 其次,JavaScript支持词法作用域和闭包,这是函数式编程中重要的概念。闭包...

    javascript函数式编程

    函数饲养:函数饲养(Function Breeding)是创建新函数的方法,通常用于高阶函数中。 Pointfree编程:Pointfree风格是指在编程中,不显式地提到数据,而是编写无参的函数组合。这种风格可以减少代码中的变量和临时...

    Javascript中的函数.pdf

    在JavaScript编程中,函数是构成应用程序逻辑的基本构件。理解JavaScript中函数的概念对于编写有效和高效的代码至关重要。以下知识点是基于提供的文件信息进行详细解释。 一、执行环境 执行环境是JavaScript中一个...

    JAVASCRIPT函数之高阶函数.pdf

    在本文档中,提到的核心知识点是关于JavaScript中的高阶函数。高阶函数是指至少满足下列一个条件的函数:它可以接受一个或多个函数作为参数,也可以返回一个函数。下面将详细解释与高阶函数相关的几个关键概念。 ...

    javascript中函数的写法实例代码详解

    1. JavaScript函数的基本写法 JavaScript函数可以通过function关键字来定义。基本语法结构如下: ```javascript function 函数名() { // 函数体 } ``` 例如: ```javascript function myFunction() { console.log...

    JavaScript函数式编程.pdf

    不过,由于【标题】中提供了文档的名称——"JavaScript函数式编程.pdf",我可以根据这个名称扩展出关于JavaScript函数式编程的知识点。 JavaScript函数式编程的知识点非常丰富,涉及很多方面的内容,下面将详细介绍...

    javascript指南和函数式编程

    而《JavaScript函数式.zip》可能是一份关于JavaScript函数式编程的资料集合,函数式编程是一种编程范式,强调使用函数和避免改变状态。其中可能涵盖以下知识点: 1. **纯函数**:理解纯函数的定义,即给定相同的...

    C#与JAVASCRIPT函数的相互调用 C#调用JAVASCRIPT函数的调用 JAVASCRIPT调用C#函数的调用

    C#与JAVASCRIPT函数的相互调用 C#调用JAVASCRIPT函数的调用 JAVASCRIPT调用C#函数的调用

    JavaScript中函数表达式和函数声明及函数声明与函数表达式的不同

    JavaScript中函数表达式和函数声明是创建函数的两种基本方式,它们在语法和行为上有所区别。函数声明(Function Declaration)和函数表达式(Function Expression)的不同之处在于它们在代码中的处理方式和使用时机...

    JavaScript之函数(ppt)

    JavaScript之函数(ppt)JavaScript之函数(ppt)JavaScript之函数(ppt)JavaScript之函数(ppt)JavaScript之函数(ppt)JavaScript之函数(ppt)JavaScript之函数(ppt)JavaScript之函数(ppt)JavaScript之函数...

    了解Javascript中函数作为对象的魅力

    JavaScript中的函数作为对象是语言设计的一个独特特性,它赋予了函数更多的灵活性和强大的功能。首先,函数在JavaScript中是第一类对象,这意味着它们可以像普通对象一样被赋值给变量、作为参数传递以及作为返回值。...

    javascript实现根据函数名称字符串动态执行函数的方法示例

    在JavaScript编程中,有时会遇到需要根据函数名的字符串形式来动态执行对应函数的场景。这类技术能够提供一种灵活的方式来执行代码,尤其在进行插件化开发、事件驱动编程或实现钩子函数时非常有用。为了实现这一功能...

Global site tag (gtag.js) - Google Analytics