function printArray(array){
for(var i=0;i<array.length;i++){
print(array[i]);
}
}
function forEach(array,action){
for(var i=0;i<array.length;i++){
action(array[i]);
}
}
forEach(["a","b","c"],print);
function sum(numbers){
var total = 0;
forEach(numbers,function(number){
total+=number;
})
return total;
}
function negate(func){
return function(x){
return !func(x);
}
}
var isNotNaN = negate(isNaN);
isNotNaN(NaN);
传说中的组合模式:
function compose(f1,f2){
return function(){
return f1(f2.apply(null,arguments));
};
}
var isNotNaN = compose(op["!"],isNaN);
isNotNaN(5); =>true
function reduce(combine,base,array){
forEach(array,function(element){
base = combine(base,element);
});
}
function add(a,b){
return a+b;
}
reduce(add,0,array);
function map(func,array){
var result = [];
forEach(array,function(element){
result.push(func(element));
});
return result;
}
map(Math.round,[0.01,2,9,Math.PI]);
function splitParagraph(text){
function split(pos){
if(pos == text.length) return [];
else if(text.charAt(pos) == "*"){
var end = findClosing(“*”,pos+1);
frag = {type:“emphasized”,content:text.slice(pos+1,end)};
return [frag].concat(split(end+1)); //回调
} else if(text.charAt(pos) == "{"){
var end = findClosing(“{”,pos+1);
frag = {type:“emphasized”,content:text.slice(pos+1,end)};
return [frag].concat(split(end+1)); //回调
} else{
var end = findOpeningOrEnd(pos),
frag = {type:"normal",content:text.splice(pos+1,end)};
return [frag].concat(split(end));
}
}
function findClosing(character,from){
var end = text.indexOf(character,from);
if(end == -1) throw new Error("Missing closing ' "+character+"'");
return end;
}
function findOpeningOrEnd(from){
function indexOrEnd(character){
var index = text.indexOf(character,from);
return index = -1?text.length:index;
}
return Math.min(indexOrEnd("*"),indexOrEnd("{"));
}
return split(0);
}
function split(){
var pos = 0,fragments = [];
while(pop<text.lenght){
if(text.charAt(pos) == "*"){
var end = findClosing("*",pos+1);
fragments.push({type:"emphasized",content:text.slice(pos+1,end)});
pos = end+1;
}else if(text.charAt(pos) == "{"){
var end = findClosing("}",pos+1);
fragments.push({type:"footnote",content:text.slice(pos+1,end)});
}
else{
var end = findOpeningOrEnd(pos);
fragments.push({type:“footnote”,content:text.slice(pos,end)});
pos = end;
}
}
return fragments;
}
function partial(func){
var knownArgs = arguments;
return function(){
var realArgs = [];
for(var i=1;i<knownArgs.length;i++){ //from 1
realArgs.push(knowArgs[i]);
}
for(var i=0;i<arguments.length;i++){
realArgs.push(arguments[i]);
}
return func.apply(null,realArgs);
}
}
map(partial(op["+"],1),[0,2,4,6,8,10]); // op["+"] swithcase 的一个function
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有