我正在尝试编写一个执行以下操作的函数:
下面的函数(我在网上找到)通过将一个字符串作为参数,然后返回该字符串的所有排列来完成此操作
我无法弄清楚如何修改它以使其与整数数组一起使用(我认为这与某些方法在字符串上的工作方式不同于它们在整数上的工作方式有关,但我不确定. ..)
var permArr = [], usedChars = [];
function permute(input) {
var i, ch, chars = input.split("");
for (i = 0; i < chars.length; i++) {
ch = chars.splice(i, 1);
usedChars.push(ch);
if (chars.length == 0)
permArr[permArr.length] = usedChars.join("");
permute(chars.join(""));
chars.splice(i, 0, ch);
usedChars.pop();
}
return permArr
};
Run Code Online (Sandbox Code Playgroud)
注意:我希望使函数返回整数数组,而不是字符串数组.
我真的需要使用JavaScript的解决方案.我已经在python中找到了如何做到这一点
我在我的应用程序中使用Select2以允许搜索大约1200个选项的下拉列表.
我目前正在使用Select2的匹配器的默认实现,只要关键字在搜索结果中相邻,它就可以正常工作:
function(term, text) { return text.toUpperCase().indexOf(term.toUpperCase())>=0; }
Run Code Online (Sandbox Code Playgroud)
例如,搜索'stackoverflow question'会返回选项'Stackoverflow关于Select2的问题'
然而,我会希望匹配器根据非相邻关键字返回结果.例如,我也希望它在搜索'stackoverflow select2'时返回上面的选项.
是否有人知道如何创建自定义匹配器以允许此行为?