< 笔记 > JavaScript
来源:互联网 发布:软件行业职位分类 编辑:程序博客网 时间:2024/06/06 05:18
06 JavaScript 函数
By Kevin Song
06-01 一般函数
06-02 动态函数
06-03 匿名函数
06-01 一般函数
定义函数需要两个明确
- 函数的结果
- 参数列表
格式:
function 函数名 (参数列表) { 函数体; return 返回值;}
<script type="text/javascript"> function demo() { alert("demo run"); return; } demo();//调用函数 function demo2(x,y) { return x+y; } var sum = demo2(1,2); alert("sum"+sum);</script>
函数细节一
- 只要使用函数名称就是在调用函数
- 函数中有一个数组,在对传入的参数进行存储,这个数组就是argument
function show(x,y) { alert(x+":"+y);}show(4);//4:undefined
函数细节二
- 不写括号直接写函数名,无法调用函数,输出的是函数的字符串表达形式
function getSum() { return 100;}var sum = getSum();alert("sum="+sum);//函数运行,返回值100赋值给sumvar sum = getSum;alert("sum="+sum);//getSum这个引用的地址值赋给sum,sum也变成了函数对象的引用,打印对象的字符串形式/*sum=function getSum() { return 100;}*/
06-02 动态函数
动态函数:使用的是JavaScript中内置的对象Function
格式
new Function("参数列表","代码1;代码2;return;");
var add = new Function("x,y","var sum; sum=x+y; return sum;");var sum = add(4,8)alert("sum”+sum);//12
06-03 匿名函数
函数的简写形式
var add3 = function(a,b) { return a+b;}alert(add3(7,8));
函数练习
- 获取数组最值
function getMax(arr) { var max = 0; for(var x = 1; x < arr.length; x++) { if(arr[x]>arr[max]) { max = x; } } return arr[max]}
- 数组排序
function sortArray(arr) { for(var x = 1; x < arr.length-1; x++) { for(var y = x+1; y < arr.length; y++) { if(arr[x]<arr[y]) { swap(arr,x,y); } } }}function swap(arr,x,y) { var temp = arr[x]; arr[x] = arr[y]; arr[y] = temp;}
- 数组查找
//挨个查找function searchElement(arr,key) { for(var x = 0; x < arr.length; x++) { if(arr[x]==key) { return x; } }}
//二分查找function binarySearch(arr,key) { arr.sort(); for(var x = 0; x < arr.length; x++) { var max,min,mid; min = 0; max = arr.ength-1; while(min<=max) { mid = (max+min)>>1; if(key>arr[mid]) { min = mid + 1; } else if(key<arr[mid]) { max = mid - 1; } else { return mid; } } return -1; }}
- 数组逆排序
function reverseArray(arr){ for(var start=0,end=arr.length-1; start<end; start++,end--){ swap(arr,start,end); }}reverseArray(arr);println("反转后:"+arr);function println(val) { document.write(val+"<br/>");}
阅读全文
0 0
- JavaScript笔记
- Javascript笔记
- javascript笔记
- javascript 笔记
- javascript笔记
- javascript笔记
- JavaScript 笔记
- JavaScript笔记
- javascript 笔记
- javascript 笔记
- JavaScript笔记.
- JavaScript笔记
- JavaScript 笔记
- javascript笔记
- javascript笔记
- Javascript笔记
- Javascript笔记
- javascript笔记
- ActiveMQ小记(一):监控
- cookie简单理解
- emacs coding UTF-8 保存报错
- java,web应用中,关于多用户访问,是不是就是一个用户等于一个线程? 50 那一般的时候是多用户多线程还是多用户单线程。 6S根本停不下来 | 浏览 2065 次 我有更好的答案 发布于2016-
- 静态代理和动态代理的简单实现
- < 笔记 > JavaScript
- 季節問題
- java多线程之守护线程(Daemon)
- ImagesUtils 工具类Imagelolder
- 学习hibernate中的一些问题及知识(2)
- gStore 之 VS*-Tree
- 刷爆朋友圈的“可以喝的书”,你还记得吗?
- 从JDK源码角度看Float
- Windows下添加MySQL服务到系统服务以及注意事项