2017-05-30 70 views
0

我需要找到两个数组之间的截距。有时候其中一个是空的。为此,我使用下划线。基本的Javascript 2d数组问题

var fromDB = [[123],[]]; 
var result = _.intersection(fromDB[0]); 

这不起作用,因为fromDB[0][123],而不是[123],[]。你知道任何获得[123],[]的方法吗?

+0

空数组如何与其他数组相交? – PeterMader

回答

0

您既可以指定两个索引,也可以使用spread operator

var fromDB = [ 
 
    [123], 
 
    [] 
 
]; 
 

 
console.log(_.intersection(...fromDB)); 
 
console.log(_.intersection(fromDB[0], fromDB[1])); 
 

 
fromDB = [ 
 
    [123], 
 
    [123] 
 
] 
 

 
console.log(_.intersection(...fromDB)); 
 
console.log(_.intersection(fromDB[0], fromDB[1]));
.as-console-wrapper { 
 
    max-height: 100% !important; 
 
    top: 0; 
 
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.3/underscore.js"></script>

+0

酷我不知道这个操作符! – Steeve17

0

如果你想访问您在fromDB创建空数组,你需要fromDB [1],即是在此代码段

_.intersection(fromDB[0],fromDB[1]); 

我想这是你想要的。

+0

不,因为fromDB可能有两个以上的元素 – Steeve17

+0

如果是这样的话,我认为传播运算符是你最好的选择。 – Bharath