Javascript 在谷歌电子表格中获取二维矩阵的单元格

Javascript 在谷歌电子表格中获取二维矩阵的单元格,javascript,matrix,google-apps-script,Javascript,Matrix,Google Apps Script,我在Google Apps脚本中将此函数作为自定义函数用于电子表格: function MultiplyMatrix(m2, m1) { var result = []; for(var j = 0; j < m2.length; j++) { result[j] = []; for(var k = 0; k < m1[0].length; k++) { var sum = 0; for(

我在Google Apps脚本中将此函数作为自定义函数用于电子表格:

function MultiplyMatrix(m2, m1) {
    var result = [];
    for(var j = 0; j < m2.length; j++) {
        result[j] = [];
        for(var k = 0; k < m1[0].length; k++) {
            var sum = 0;
            for(var i = 0; i < m1.length; i++) {
                sum += m1[i][k] * m2[j][i];
            }
            result[j].push(sum);
        }
    }
    return result;
}
函数乘法矩阵(m2,m1){
var结果=[];
对于(var j=0;j
有没有一种方法可以在不将整个结果矩阵输入电子表格的情况下获取数组的特定索引,如果有,语法是什么

我有这个:

我只想要这个:


由于我无法发表评论,我将使用答案。考虑到你的问题是如何表述的,一个简单的答案是改变你的自定义函数定义,这样它就需要两个额外的参数,你感兴趣的结果的行索引和列索引;因此,您的代码变成:

function MultiplyMatrix(m2, m1, row, col) {
    var result = [];
    for(var j = 0; j < m2.length; j++) {
        result[j] = [];
        for(var k = 0; k < m1[0].length; k++) {
            var sum = 0;
            for(var i = 0; i < m1.length; i++) {
                sum += m1[i][k] * m2[j][i];
            }
            result[j].push(sum);
        }
    }
    return result[row][col];
}
函数乘法矩阵(m2、m1、行、列){
var结果=[];
对于(var j=0;j
然后,您可以将函数调用为
=multipleMatrix(A1:B2,C3:D4,1,1)
,以获取第二行和第二列的交点的值


如果这不是您期望的答案,我建议您编辑您的问题,并将其标记为google电子表格(javascript自定义函数特定于此),并澄清需求。电子表格示例对我们大家都很有用。

这是一个Excel问题吗?附加错误的技术标签只会混淆问题。返回结果[j][k];