如何在javascript中将数组中的值添加到另一个数组中的值?

如何在javascript中将数组中的值添加到另一个数组中的值?,javascript,Javascript,因此,我有两个数组:grade[]和grade2[],其中包含我从windows.prompt中提供的元素。我想将grade的值与grade 2的值相加,以便计算“媒体”。但是我写的代码只包含了这两个值,实际上并没有添加它们。我是初学者,希望你能帮助我。谢谢大家! function display_student() { var n=window.prompt("Number of students: "+""); var name= new Array(n); var grade=n

因此,我有两个数组:grade[]和grade2[],其中包含我从windows.prompt中提供的元素。我想将grade的值与grade 2的值相加,以便计算“媒体”。但是我写的代码只包含了这两个值,实际上并没有添加它们。我是初学者,希望你能帮助我。谢谢大家!

function display_student() 
{ 
 var n=window.prompt("Number of students: "+"");
 var name= new Array(n);
 var grade=new Array(n); 
 var grade2=new Array(n); 
 var y=0; 
 for (y=0; y<n; y++) 
 { 
name[y]=window.prompt("Student name:","");
grade[y]=window.prompt("Grade 1: ","5");
grade2[y]=window.prompt("Grade 2: ","5")

document.write("</br>"+"Student name: "+name[y]+"</br>"+"Grade 1: "+grade[y]+"    </br>"+"Grade 2: "+grade2[y]+"</br>");
var media=(grade[y]+grade2[y])/2;

document.write("Media: "+media+"</br>");
if(media<5)
document.write("Failed");
else
document.write("Promoted");
  } 
}    
函数显示\u student()
{ 
var n=window.prompt(“学生人数:+”);
var name=新数组(n);
var等级=新阵列(n);
var grade2=新阵列(n);
var y=0;

对于(y=0;y数组中的值为
String
()类型,您需要将它们转换为数字以将它们相加:

function display_student() {
    var n = window.prompt("Number of students: " + "");
    var name = new Array(n);
    var grade = new Array(n);
    var grade2 = new Array(n);
    var y = 0;
    for (y = 0; y < n; y++) {
        name[y] = window.prompt("Student name:", "");
        grade[y] = window.prompt("Grade 1: ", "5");
        grade2[y] = window.prompt("Grade 2: ", "5"); // added semi-colon here too

        document.write("</br>" + "Student name: " + name[y] + "</br>" + "Grade 1: " + grade[y] + "    </br>" + "Grade 2: " + grade2[y] + "</br>");
        var media = (parseFloat(grade[y]) + parseFloat(grade2[y])) / 2;

        document.write("Media: " + media + "</br>");
        if (media < 5) {
            document.write("Failed");
        } else {
            document.write("Promoted");
        }
    }
}
函数显示\u student(){
var n=window.prompt(“学生人数:+”);
var name=新数组(n);
var等级=新阵列(n);
var grade2=新阵列(n);
var y=0;
对于(y=0;y”+”学生姓名:“+姓名[y]+”
“+”一年级:“+年级[y]+”
“+”二年级:“+二年级[y]+”
”; var media=(parseFloat(grade[y])+parseFloat(grade 2[y]))/2; 文档。写入(“媒体:“+Media+”
”; 如果(介质<5){ 文件。写入(“失败”); }否则{ 文件。编写(“推广”); } } }

工作示例:

数组中的值类型为
字符串
(),您需要将它们转换为数字以将它们相加:

function display_student() {
    var n = window.prompt("Number of students: " + "");
    var name = new Array(n);
    var grade = new Array(n);
    var grade2 = new Array(n);
    var y = 0;
    for (y = 0; y < n; y++) {
        name[y] = window.prompt("Student name:", "");
        grade[y] = window.prompt("Grade 1: ", "5");
        grade2[y] = window.prompt("Grade 2: ", "5"); // added semi-colon here too

        document.write("</br>" + "Student name: " + name[y] + "</br>" + "Grade 1: " + grade[y] + "    </br>" + "Grade 2: " + grade2[y] + "</br>");
        var media = (parseFloat(grade[y]) + parseFloat(grade2[y])) / 2;

        document.write("Media: " + media + "</br>");
        if (media < 5) {
            document.write("Failed");
        } else {
            document.write("Promoted");
        }
    }
}
函数显示\u student(){
var n=window.prompt(“学生人数:+”);
var name=新数组(n);
var等级=新阵列(n);
var grade2=新阵列(n);
var y=0;
对于(y=0;y”+”学生姓名:“+姓名[y]+”
“+”一年级:“+年级[y]+”
“+”二年级:“+二年级[y]+”
”; var media=(parseFloat(grade[y])+parseFloat(grade 2[y]))/2; 文档。写入(“媒体:“+Media+”
”; 如果(介质<5){ 文件。写入(“失败”); }否则{ 文件。编写(“推广”); } } }

工作示例:

因为它们是字符串而不是数字。
看看
parseInt(字符串,基数)


  • 因为它们是字符串而不是数字。
    看看
    parseInt(字符串,基数)

    使用:

    var media=(parseInt(grade[y], 10)+parseInt(grade2[y], 10))/2;
    
    假设你的分数是整数。否则,使用
    parseFloat
    (在这种情况下,你不需要第二个参数)。

    使用:


    假设你的分数是整数。否则,使用
    parseFloat
    (在这种情况下,你不需要第二个参数)。

    在添加之前使用
    parseInt
    函数

    var media=(parseInt(grade[y]) + parseInt(grade2[y]))/2;
    

    添加之前,请使用
    parseInt
    函数

    var media=(parseInt(grade[y]) + parseInt(grade2[y]))/2;
    
    使用parseFloat:

    var media=(parseFloat(grade[y])+parseFloat(grade2[y]))/2;
    
    使用parseFloat:

    var media=(parseFloat(grade[y])+parseFloat(grade2[y]))/2;
    

    这是一个间接的答案,因为这是一个家庭作业

    由于window.prompt在默认情况下返回一个字符串,因此您需要将该字符串转换为一个数字

    • 您可以按照一些人的建议使用
      parseInt()
      。返回一个整数值
    • 您可以按照建议使用
      parseFloat()
    • 您可以在提示符下使用简单的数字除法强制执行此操作:
      窗口。提示符(“1级:,“5”)/1;
      或在介质计算过程中:
      var media=(Grade[y]/1+Grade 2[y]/1)/2;
      
    • 您可以使用Number()函数:
      Number(window.prompt(“Grade 1:,“5”);

    由您决定哪种方法适合您的需要。如果输入的值不是一个数字,该怎么办?研究每种方法以确定哪种方法最适合您的需要。

    这是一个间接答案,因为这是一个家庭作业

    由于window.prompt在默认情况下返回一个字符串,因此您需要将该字符串转换为一个数字

    • 您可以按照一些人的建议使用
      parseInt()
      。返回一个整数值
    • 您可以按照建议使用
      parseFloat()
    • 您可以在提示符下使用简单的数字除法强制执行此操作:
      窗口。提示符(“1级:,“5”)/1;
      或在介质计算过程中:
      var media=(Grade[y]/1+Grade 2[y]/1)/2;
      
    • 您可以使用Number()函数:
      Number(window.prompt(“Grade 1:,“5”);

    由您决定哪种方法适合您的需要。如果输入的值不是数字怎么办?研究每种方法以确定哪种方法最适合您的需要。

    此行
    grade2[y]=window.prompt(“Grade 2:,“5”)
    缺少半结肠我很高兴您将其标记为家庭作业。此行
    grade2[y]=window.prompt(“2级:,“5”)
    缺少一个半结肠。我很高兴您将此标记为家庭作业。