如何检查外部数组内部的内部数组? (加号 => 功能)
How to check inner arrays that inside of outer array? (Plus => function)
抱歉,如果这些问题是 JS 的基础问题之一。
第 1 期
我正在尝试让代码检测位于外部数组内部的内部数组,
数组的结构是这样的;
var array = ['Bob', ['Tim', 'Katy', 'Zoe'], 'Jimmy', 'Jay' . . .]
<div>
<ul>
<li>name goes here</li>
<li>name goes here</li>
<li>name goes here</li>
<li>name goes here</li>
<li>name goes here</li>
<li>name goes here</li>
</ul>
</div>
const peeps = ['Bob', ['Tim', 'Katy', 'Zoe'], 'Jimmy', 'Jay', 'Louis', 'Yagami Light'];
$('div ul li').on('mouseenter', function() {
for (i = 0; i < peeps.length; i++) {
if (peeps[i][] in peeps[i] == true) {
console.log('wow')
}
}
})
这是我到目前为止的进步,但从未按我预期的方式工作。
第 2 期
我坚持从箭头函数中获取 this
关键字。
$('div ul li').on('mouseenter', () => {
var a = $(this).index();
console.log(a);
})
出于某种原因,此代码一直显示 -1,但在将 ()
更改为 function() {}
后,代码按我的需要打印 1、2、3、4。
有人知道为什么 =>
函数无法从该代码中获取 this
关键字吗?
任何提示或信息都可以很好地解决我的问题。
谢谢。
对于第一个问题,请尝试使用 Array.isArray 检查元素是否是如下所示的数组 -
var peeps = ['Bob', ['Tim', 'Katy', 'Zoe'], 'Jimmy', 'Jay', 'Louis', 'Yagami Light'];
peeps.forEach((d, i) => Array.isArray(d) && console.log('found an array', d))
第二个问题是“using this with Arrow functions”。要解决此问题,您可以将 "arrow function" 更改为 es5 函数
$('div ul li').on('mouseenter', function() {
var a = $(this).index();
console.log(a);
})
抱歉,如果这些问题是 JS 的基础问题之一。
第 1 期
我正在尝试让代码检测位于外部数组内部的内部数组,
数组的结构是这样的;
var array = ['Bob', ['Tim', 'Katy', 'Zoe'], 'Jimmy', 'Jay' . . .]
<div>
<ul>
<li>name goes here</li>
<li>name goes here</li>
<li>name goes here</li>
<li>name goes here</li>
<li>name goes here</li>
<li>name goes here</li>
</ul>
</div>
const peeps = ['Bob', ['Tim', 'Katy', 'Zoe'], 'Jimmy', 'Jay', 'Louis', 'Yagami Light'];
$('div ul li').on('mouseenter', function() {
for (i = 0; i < peeps.length; i++) {
if (peeps[i][] in peeps[i] == true) {
console.log('wow')
}
}
})
这是我到目前为止的进步,但从未按我预期的方式工作。
第 2 期
我坚持从箭头函数中获取 this
关键字。
$('div ul li').on('mouseenter', () => {
var a = $(this).index();
console.log(a);
})
出于某种原因,此代码一直显示 -1,但在将 ()
更改为 function() {}
后,代码按我的需要打印 1、2、3、4。
有人知道为什么 =>
函数无法从该代码中获取 this
关键字吗?
任何提示或信息都可以很好地解决我的问题。
谢谢。
对于第一个问题,请尝试使用 Array.isArray 检查元素是否是如下所示的数组 -
var peeps = ['Bob', ['Tim', 'Katy', 'Zoe'], 'Jimmy', 'Jay', 'Louis', 'Yagami Light'];
peeps.forEach((d, i) => Array.isArray(d) && console.log('found an array', d))
第二个问题是“using this with Arrow functions”。要解决此问题,您可以将 "arrow function" 更改为 es5 函数
$('div ul li').on('mouseenter', function() {
var a = $(this).index();
console.log(a);
})