题
ExtJS有Ext.each()函数,但是某个map()是否也隐藏在哪里?
我努力了,但没有找到任何可以填补这个角色的东西。这似乎是一件简单而微不足道的事情,一个像Ext一样大的JS库显然必须有。
或者当Ext真的不包含它时,将它添加到Ext的最佳方法是什么。当然,我可以写:
Ext.map = function(arr, f) { ... };
但这真的是正确的方法吗?
解决方案 3
看来我的大学正在使用 ext-basex ,使用map()和其他方法扩展Array.prototype。
所以我可以写:
[1, 2, 3].map( function(){ ... } );
问题解决了。
其他提示
至少从Ext4开始,包含了Ext.Array.map。
http://docs.sencha的.com / ExtJS的/ 5.0.1 /#!/ API / Ext.Array-方法-地图
由于 map
更像是一个实用程序而不是任何东西,我不明白为什么会有任何特殊的方法将它插入Ext命名空间;你建议的方式会运作得很好,但你可能想这样做:
if(Ext && typeof(Ext.map) == "undefined") { // only if Ext exists & map isn't already defined
Ext.map = function(arr, f) { ... };
}
看起来很好......但是,我不使用ExtJS,所以我不知道。我确实对他们的文档采取了一种看法,在这种情况下似乎没有什么特别的事情要做。
如何使用Ext + Prototype或Ext + Jquery等混合库之一。我已经使用Extjs + Prototypejs一段时间了,它帮助我很多工作到Extjs代码,同时拥有更熟悉的原型js。
http://extjs.com/products/extjs/build/ 将构建运行extjs和(prototypejs | jquery | yahooUI)所需的所有文件的自定义tar / zip文件。
ExtJS不会取代Javascript语言本身。数组函数不是ExtJS核心的焦点。但是有一个特殊的Ext.Array对象类型。你可以自己扩展它。
编辑:不是Ext.Array,只是扩展了Array对象。