Javascript IN操作不适用于一个项目数组

阿尔瓦罗·乔奥(Alvaro Joao)

如下代码片段所示,为什么在使用操作具有一个位置的数组无法正常IN工作?

您可以看到,使用2项操作可以正常进行

  • 为什么会这样呢?
  • 周围有什么工作?

// helper function
function showResult(result) {
  document.querySelector('#result').innerHTML += result+'<br/>';
}

var a = ["1"]
var b = "1"

showResult(b in a);
//false

var a = ["1","2"]
var b = "1"

showResult(b in a);
//true
<div id="result"></div>

保罗

在操作者检查是否一个对象具有一键,而不是一个值。您的第二种情况返回true是因为具有两个元素的任何数组都具有键'0''1'没关系,'1'也恰好是该数组中的一个值;'1' in ['foo', 'bar']也是如此。

要测试元素是否在数组中,应使用Array.prototype.indexOf或在现代引擎Array.prototype.includes中使用您可以从任何一个链接中使用polyfill来在所有引擎中获得对该方法的支持:

// Most engines (IE 9+)
showResult( a.indexOf( b ) >= 0 );

// Modern engines only:
showResult( a.includes( b ) );

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

javascript效果仅适用于第一个元素,而不适用于其他元素?

来自分类Dev

Javascript 表单验证不适用于一个字段,但适用于其他字段

来自分类Dev

试图创建一个下拉菜单,但不适用于javascript

来自分类Dev

Webpart javascript不适用于数组

来自分类Dev

JavaScript 仅适用于一个 div

来自分类Dev

JavaScript提交不适用于同一页面上的操作

来自分类Dev

stringify不适用于我的javascript数组

来自分类Dev

连接方法不适用于数组JAVASCRIPT

来自分类Dev

Javascript 数组拼接不适用于 JQuery 单击事件

来自分类Dev

Javascript:将所有找到的.data()汇总为一个项目数组

来自分类Dev

一页滚动导航不适用于 Javascript?

来自分类Dev

带有 MongoDB/Mongoose 的 Bcrypt python 脚本和 JavaScript 不适用于两个单独的项目

来自分类Dev

JavaScript getElementById不适用于表格

来自分类Dev

条件不适用于javascript

来自分类Dev

呼叫方法不适用于javascript

来自分类Dev

javascript date()不适用于IE

来自分类Dev

svg大小不适用于javascript

来自分类Dev

CSS过渡不适用于Javascript

来自分类Dev

Javascript延迟不适用于FilePond

来自分类Dev

线性渐变不适用于JavaScript

来自分类Dev

JavaScript函数不适用于整数

来自分类Dev

可见不适用于javascript

来自分类Dev

Javascript forEach不适用于json

来自分类Dev

jQuery API不适用于JavaScript

来自分类Dev

jQuery代码不适用于javascript

来自分类Dev

自动点击不适用于javascript

来自分类Dev

Apply 不适用于 fromCharCode - javascript

来自分类Dev

AppendChild 不适用于 textcontent (javascript)

来自分类Dev

是否有一个适用于javascript的良好“ cookie”库?

Related 相关文章

热门标签

归档