我是一名乞丐,我正在编码以改变整个数组的值。例如,我的目标是将º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);
}
}
直到这里,代码。所以我的问题是:
- 我如何修改这个功能以实现其目标?
答案 0 :(得分:3)
看看你的拼写 - 它是.length
,而不是.lenght
!
答案 1 :(得分:2)
正如其他人所说,.length
存在问题。
但我会建议采用不同的方法来解决这个问题。尝试使用像“map”这样的高阶函数来完成这项工作。 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map
e.g。将ºC改为ºK的功能类似于:
function celciusToKelvin(celciusVal){
return celciusVal + 274.15;
}
现在,如果你有像var celciusValues = [12,23,34,45];
这样的celcius值数组,你可以调用map函数:
var kelvinValues = celciusValues.map(celciusToKelvin);