找出JavaScript数组是否包含对象的最简洁有效的方法是什么?
这是我知道的唯一方法:
function contains(a, obj) {
for (var i = 0; i < a.length; i++) {
if (a[i] === obj) {
return true;
}
}
return false;
}
Run Code Online (Sandbox Code Playgroud)
有没有更好,更简洁的方法来实现这一目标?
这与Stack Overflow问题密切相关问题在JavaScript数组中查找项目的最佳方法是什么?它使用的方法寻找数组中的对象indexOf.
javascript arrays algorithm time-complexity javascript-objects
如果我有一个需要满足这些要求的if语句:
if(cave > 0 && training > 0 && mobility > 0 && sleep > 0)
Run Code Online (Sandbox Code Playgroud)
有没有办法说它们都大于零?只是为了更有效的DRY代码?
就像是:
if(cave, training, mobility, sleep > 0)
Run Code Online (Sandbox Code Playgroud) 首先抱歉,我不知道该叫什么键(ENTER,F1,HOME等).
实际上,我正在创建一个输入搜索框,其中onkeyup调用一个函数.当用户输入至少两个键时,我的函数被调用,并且使用AJAX显示相关的搜索结果.问题是当用户按下箭头键,HOME,END等时,我的ajax也被调用,我不想要.并且当关注输入时按F5键重新加载页面不会重新加载页面,而是调用AJAX,这就是为什么它对我来说是个大问题.
$('input[name=\'search\']').on(keyup, function(e) {
if ($('input[name=\'search\']').val().length >= 2) {
// call ajax to display results..
}
});
Run Code Online (Sandbox Code Playgroud)
我想在其中添加一个额外的表达式if,用于检查是否按下了不可见的键.喜欢 -
if ($('input[name=\'search\']').val().length >= 2 && (EXPRESSION FOR VISIBLE KEYS)) {
// call ajax to display results..
}
Run Code Online (Sandbox Code Playgroud)
如果按下任何可见键,则调用ajax,否则不调用.
我不知道如何实现这一目标.因为我不能e.keycode == '65'为每个键做,如A,B,C,\,=,+,1,2,3等
是否有现成的库来检查这个或任何其他方式来做到这一点?请帮我.
您好,我是编程新手,我想使用 javascript 访问对象内的数组...
我有如下的数据结构,
const some_obj = {
accessKey: "",
children: [
div.someclassname,
div.someclassname,
div.someclassname.highlight,
]
}
Run Code Online (Sandbox Code Playgroud)
下面是我记录变量时在浏览器控制台中的样子。
object
current: div.wrapper
accessKey: ""
align: ""
childElementCount: 4
childNodes: NodeList(4) [div.someclassname, div.someclassname.highlight,
div.someclassname]
children: HTMLCollection(4) [div.someclassname,
div.someclassname.highlight, div.someclassname]
Run Code Online (Sandbox Code Playgroud)
在控制台中打印 some_obj.children 会给出以下输出。object.children HTMLCollection(3) 0: div.someclassname 1: div.someclassname.highlight 2: div.someclassname
现在,我想从 some_obj 检查 some_obj 子数组中是否有 div.classname.highlight 。我该怎么做。
我尝试使用 some_obj.current.children.find() 但说 find 不是函数。
我如何检查 some_obj 子级是否具有 div.someclassname.highlight。有人可以帮我解决这个问题吗?谢谢
我在Javascript中有一个对象数组:
function focal( name, data )
{
this.name = name;
this.data = data;
}
count = 0;
arrayFocal = [];
arrayFocal[count] = new focal( "Name", "12/08/2014" );
count++;
Run Code Online (Sandbox Code Playgroud)
现在我想找到arrayFocal名字
注意:IE 8
给出一个完整的文字,如:
var nation = "Piazza delle Medaglie d'Oro
40121 Bologna
Italy"
Run Code Online (Sandbox Code Playgroud)
和给定的数组如:
["Afghanistan", "Italy", "Albania", "United Arab Emirates"]
Run Code Online (Sandbox Code Playgroud)
我们怎样才能检查整篇文章中的意大利语是array什么?
在这个SO答案之后,这就是我尝试过的,但是我得到的False却是意大利人array
var countries = [];
$("#usp-custom-3 option").each(function() {
var single = $(this).text();
countries.push(single);
var foundPresent = countries.includes("Piazza delle Medaglie d'Oro 40121 Bologna Italy");
console.log(foundPresent);
});
Run Code Online (Sandbox Code Playgroud)
我有这个数组:
var str = "rrr";
var arr = ["ddd","rrr","ttt"];
Run Code Online (Sandbox Code Playgroud)
我试着检查一下如果arr包含str.我试试这个:
var res = arr .find(str);
Run Code Online (Sandbox Code Playgroud)
但是排在上面的行不知道我做错了什么?