gpt4 book ai didi

javascript indexOf Array在浏览器上的不同结果

转载 作者:行者123 更新时间:2023-11-28 07:19:16 25 4
gpt4 key购买 nike

这是我的代码片段

var arrays = [
['name1', -10, 100, 1, 'abc', 'xxx'],
['name1', -10, 100, 1, 'abc', 'xxx'],
['name2', -8, 80, 1, 'bbb', 'zzz'],
['name1', -10, 100, 1, 'abc', 'xxx']
];

$('#searchsite').keyup(function() {
var keyword = $(this).val();
var minlength = 3;
var result = [];
if (keyword.length >= minlength) {
for (var i = 0; i < arrays.length; i++) {
if (arrays[i][0].toLowerCase().indexOf(keyword) !== -1) {
result.push('<input type="button" name="button" class="btn btn-danger" value="' + arrays[i][0] + '"><br>');
}
}
resultunique = jQuery.unique(result);
$('#searchresult').html(resultunique);
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<input id="searchsite" />
<div id="searchresult"></div>

在 Firefox 和 Chrome 上获得不同结果的任何原因

最佳答案

您对$.unique()的使用是错误的,它只适用于 dom 元素。

Description: Sorts an array of DOM elements, in place, with the duplicates removed. Note that this only works on arrays of DOM elements, not strings or numbers.

由于您每次都创建一个新的 input 元素标记,因此没有重复项。

您可以自己实现独特的逻辑

var arrays = [
['name1', -10, 100, 1, 'abc', 'xxx'],
['name1', -10, 100, 1, 'abc', 'xxx'],
['name2', -8, 80, 1, 'bbb', 'zzz'],
['name1', -10, 100, 1, 'abc', 'xxx']
];

$('#searchsite').keyup(function() {
var keyword = $(this).val().toLowerCase();
var minlength = 3;
var result = [],
keys = {};
if (keyword.length >= minlength) {

result = $.map(arrays, function(array) {
var name = array[0].toLowerCase();
if (!keys[name]) {
keys[name] = true;

if (name.indexOf(keyword) !== -1) {
return '<input type="button" name="button" class="btn btn-danger" value="' + array[0] + '"><br>';
}
}

})

$('#searchresult').html(result.join(''));
} else {
$('#searchresult').html('');
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<input id="searchsite" />
<div id="searchresult"></div>

关于javascript indexOf Array在浏览器上的不同结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30496755/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com