Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/457.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在javascript中比较矩阵的行_Javascript_Jquery_Arrays - Fatal编程技术网

如何在javascript中比较矩阵的行

如何在javascript中比较矩阵的行,javascript,jquery,arrays,Javascript,Jquery,Arrays,我想知道如何比较矩阵的行元素。我想这样做是为了验证所有的行元素是否都是它们自己的倍数。我已经知道一个数字是另一个数字的倍数,如果它们的mod==0 但是,假设我有这个矩阵 我想将第一行与数字4和8进行比较,所有元素都是它们自身的倍数,因为4是8的倍数,而另一行是5和10的倍数 你能帮帮我吗?谢谢?我猜矩阵是嵌套数组。您可以进行2次循环,并将第一个数字存储为模 乙二醇 这将仅显示在控制台上,显示不符合规则的行 var arr = [[4, 8], [5, 11]] for (var i=0;

我想知道如何比较矩阵的行元素。我想这样做是为了验证所有的行元素是否都是它们自己的倍数。我已经知道一个数字是另一个数字的倍数,如果它们的
mod==0

但是,假设我有这个矩阵

我想将第一行与数字4和8进行比较,所有元素都是它们自身的倍数,因为4是8的倍数,而另一行是5和10的倍数


你能帮帮我吗?谢谢?

我猜矩阵是嵌套数组。您可以进行2次循环,并将第一个数字存储为模

乙二醇 这将仅显示在控制台上,显示不符合规则的行

var arr = [[4, 8], [5, 11]]

for (var i=0; i<arr.length; i++) {
    for (var j=0; j<arr[i].length; j++) {
        var compare = arr[i][0]
        // compare here
        if (arr[i][j] % compare == 0){
            // console.log(true)
        } else {
            console.log("Matrix row #" + i + " is not divisible by first number")
        }
    }
 }
var-arr=[[4,8],[5,11]]

对于(var i=0;i如果您想要的是真/假,那么您可以执行@rsutti建议的操作:

var-arr=[[4,8,11,16],[5,10,15,20];
函数checkArr(a){
对于(变量i=0;i控制台日志(checkArr(arr))
我想这样做是为了验证所有的行元素是否都是自身的倍数
-一个数字总是自身的倍数。
4是8的倍数
-不,至少不是在常见的解释中,因为
8除以4
。请详细说明你想要什么。如果一个不是倍数,你想要什么?是吗ng在第一个失败时停止?是否继续并获取所有失败的行?
var checkMultiple=arr=>arr.every(a=>{return a.every(v=>!(v%a[0]);})
使用
数组#every
您可以检查第一个值是否除以矩阵中的所有其他数字。这不仅会显示导致故障的行,还会显示该行中的所有故障。这意味着如果您的行长度为30,且仅在
arr[0]上有29个故障
则您将得到29个
“矩阵行#0不是…”
。您可以简单地
控制台。记录
错误行消息,并将j分配给
arr[i].length+1
以中断该行。