Javascript 如何创建可以在节点和浏览器中使用的函数?
我需要使用extend方法,在node中,我写道:Javascript 如何创建可以在节点和浏览器中使用的函数?,javascript,node.js,browser,Javascript,Node.js,Browser,我需要使用extend方法,在node中,我写道: var Util=require('Util'); 使用扩展(a,b); 在浏览器中,我使用zepto,因此我写道: $.extend(a,b); 我只想使用一个可以在节点和浏览器中工作的文件,所以我写道: if(typeof导出!='undefined'&&typeof模块!=='undefined'&&module.exports){//node var Util=require('Util'); 使用扩展(a,b); }else{//
var Util=require('Util');
使用扩展(a,b);
在浏览器中,我使用zepto,因此我写道:
$.extend(a,b);
我只想使用一个可以在节点和浏览器中工作的文件,所以我写道:
if(typeof导出!='undefined'&&typeof模块!=='undefined'&&module.exports){//node
var Util=require('Util');
使用扩展(a,b);
}else{//browser
美元。延长(a、b);
}
我在浏览器中使用seajs,它实现了CMD API,所以我写了:
define(功能(需求、导出、模块){
module.exports={
init:function(){
如果(typeof exports!=='undefined'&&typeof module!=='undefined'&&module.exports){//浏览器实际输入了此块
var Util=require('Util');
使用扩展(a,b);
}否则{
美元。延长(a、b);
}
}
};
});
浏览器实际上进入了第一个块,因此上面的代码不起作用,然后我写道:
define(功能(需求、导出、模块){
module.exports={
init:function(){
var-Util;
如果(Util=require('Util')){//浏览器将尝试要求使用Util,但Util是一个节点模块,因此浏览器将找不到它,这将导致404错误
使用扩展(a,b);
}否则{
美元。延长(a、b);
}
}
};
});
这将导致浏览器中出现404错误。您需要使用节点模块
browserify
将后端代码更改为前端代码您需要使用节点模块browserify
将后端代码更改为前端代码