3.匿名函数
var myFun = function(args1, args2){ alert('haha'); }
变量 myFun 指向一个匿名函数,这相当于创建函数 function myFun(args1, args2){ alert('haha'); }
由于 javascript 没有类型,所以变量可以指向任意类型,也可以指向一个函数,对它来说都只是一片内存空间而已
匿名函数一般用在只有一次使用的情况下,也是可以传递参数的
如: element.onclick = function(){ alert(0); }
4.JavaScript原生函数
//要找一组数字中的最大数,如下,可以用一个循环
var numbers = [3,342,23,22,124];
var max = 0;
for(var i=0;i<numbers.length;i++){ if(numbers[i] > max){max = numbers[i];} }
alert(max);
//也可以用排序实现同样的功能:
var numbers = [3,342,23,22,124];
numbers.sort(function(a,b){return b - a});
alert(numbers[0]);
//而最简洁的写法是:
Math.max(12,123,3,2,433,4); // returns 433
//你甚至可以使用Math.max来检测浏览器支持哪个属性:
var scrollTop = Math.max( document.documentElement.scrollTop, document.body.scrollTop );
5.如果你想给一个元素增加class样式,可能原始的写法是这样的:
function addclass(elm,newclass) {
var c = elm.className;
elm.className = (c === '') ? newclass : c+' '+newclass;
}
//而更优雅的写法是:
function addclass(elm,newclass){
var classes = elm.className.split(' ');
classes.push(newclass);
elm.className = classes.join(' ');
}