0

我是一个初学者,我正在编写代码以更改整个数组的值。例如,我的目标是将 ºC 更改为 ºK。但是这段代码似乎不起作用。它给出了一条错误消息:“j 未定义”。这段代码有什么问题?

//Original Arrays

var I_t1=new Array();
var V_t1=new Array();

//Arrays de la tabla 1
var K_t1=new Array();
var P_t1=new Array();

function kelvin() {
    var i;

    var j = new Array();
    var k = new Array();

    var k;
    var j=V_t1.lenght;   

    var k=I_t1.lenght; // La k será igual a la longitud del array T

    for(i=0;i<j.length;i++){   
        K_t1[i]= (V_t1[i] * 200);
    }

    for(i=0;i<k.length;i++){      
        P_t1[i]= (I_t1[i] * 400);
    }
}

直到这里,代码。所以我的问题是:

-如何修改此功能以实现其目标?

4

2 回答 2

3

看看你的拼写——是.length,不是.lenght

于 2013-06-12T08:32:56.867 回答
2

正如其他人提到的那样,.length. 但我会推荐一种不同的方法来解决这个问题。尝试使用“map”等高阶函数来完成这项工作。https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map

例如,将 ºC 更改为 ºK 的函数类似于:

function celciusToKelvin(celciusVal){
   return celciusVal + 274.15;
}

现在,如果你有一个像 celcius 值的数组var celciusValues = [12,23,34,45];,你可以像这样调用 map 函数:

var kelvinValues = celciusValues.map(celciusToKelvin);
于 2013-06-12T08:40:18.663 回答