将jquery inArray转换为等效的extjs

将jquery inArray转换为等效的extjs,jquery,extjs,Jquery,Extjs,extjs是否包含与inArray等效的方法?我检查了API,但什么也没找到 以下是需要紧急转换的jquery代码段: if ($.inArray(checkbox.inputValue, values) >= 0) 其中值是数组 谢谢,Ext.js似乎没有此功能。看 如果愿意,您可以在中使用猴子补丁: Ext.inArray = function(value, collection) { return collection.indexOf(value) !== -1; };

extjs是否包含与inArray等效的方法?我检查了API,但什么也没找到

以下是需要紧急转换的jquery代码段:

if ($.inArray(checkbox.inputValue, values) >= 0)
其中值是数组


谢谢,

Ext.js似乎没有此功能。看

如果愿意,您可以在中使用猴子补丁:

Ext.inArray = function(value, collection) {
    return collection.indexOf(value) !== -1;
};
Ext JS的功能与不幸命名的jQuery.inArray完全相同:

if(values.indexOf(yourValue) !== -1)

您需要使用
Ext.Array.indexOf
方法:

Ext.Array.indexOf(数组,对象项,[Number from]):Number

生成的代码如下所示:

if (Ext.Array.indexOf(checkbox.inputValue, values) >= 0)
ExtJS 4具有以下方法:


请注意,这是Ext3特有的——在Ext4中,数组原型不再被修改,因此您将使用Ext.Array.indexOf。为了澄清这一点,Ext Core没有它,但Ext JS(标准库)确实支持它,如其他答案所示。此外,我相信jQuery.inArray与Array.indexOf一样,返回匹配的索引或-1,而不是像本示例代码那样的布尔值(尽管很遗憾,这个名称肯定暗示它是布尔值)。
Ext.Array.contains(MyArray, MyString); // returns bool