[英]Return value of loop variable with Javascript
I'm looking a quick solution to return value in loop using variable我正在寻找一种使用变量在循环中返回值的快速解决方案
There is base code有基本代码
var origins = [
{level: '1', hp: 5600},
{level: '2', hp: 7600},
{level: '3', hp: 9600}
];
var text1 = "";
var text2 = "";
for (var key in origins) {
if (origins.hasOwnProperty(key)) {
text1 = origins[key].level;
text2 = origins[key].hp;
}
}
I'm trying to call loop variable我正在尝试调用循环变量
console.log(text1 + " " + text2)
It gave me an output that I didn't want:它给了我一个我不想要的输出:
3 9600
I'm looking an excepted result of output would be like this:我正在寻找一个例外的输出结果是这样的:
1 5600
2 7600
3 9600
EDIT: There is JSfiddle编辑:有 JSfiddle
http://jsfiddle.net/mttweck6/2/ http://jsfiddle.net/mttweck6/2/
You need to put the console.log in the loop or add to one text variable like final.您需要将 console.log 放入循环中或添加到一个文本变量中,例如 final。 See below
见下文
var origins = [
{level: '1', hp: 5600},
{level: '2', hp: 7600},
{level: '3', hp: 9600}
];
var text1 = "";
var text2 = "";
var final = "";
for (var key in origins) {
if (origins.hasOwnProperty(key)) {
text1 = origins[key].level;
text2 = origins[key].hp;
final += "Level: " + text1 + '\n' + "HP: " + text2 + '\n';
}
}
//I need to get external variable that would exeute in loop
alert(final);
//Excepted Result as one alert with output:
//Level 1: 5600
//Level 2: 7600
//Level 3: 9600
I think this might help you :我认为这可能会帮助你:
var origins = [
{level: '1', hp: 5600},
{level: '2', hp: 7600},
{level: '3', hp: 9600}
];
var text1 = "";
var text2 = "";
var s= "";
for (var key in origins) {
if (origins.hasOwnProperty(key)) {
text1 = origins[key].level;
text2 = origins[key].hp;
s += '\n' + "Level " + text1 + ": " + text2;
}
}
Then later do alert(s);
然后稍后做
alert(s);
var origins = [
{level: '1', hp: 5600},
{level: '2', hp: 7600},
{level: '3', hp: 9600}
];
var text1 = "";
var text2 = "";
for (var key in origins) {
if (origins.hasOwnProperty(key)) {
text1 = origins[key].level;
text2 = origins[key].hp;
console.log(text1 + " " + text2);
}
}
Edit: If you would like to save the results as an entire string编辑:如果您想将结果保存为整个字符串
var origins = [
{level: '1', hp: 5600},
{level: '2', hp: 7600},
{level: '3', hp: 9600}
];
var text1 = "";
var text2 = "";
var result = ""; // String to print
for (var key in origins) {
if (origins.hasOwnProperty(key)) {
text1 = origins[key].level;
text2 = origins[key].hp;
result += text1 + " " + text2 + "\n";
}
}
alert(result);
If you would like to display this in HTML each on their own line, just replace result += text1 + " " + text2 + "\\n";
如果您想在 HTML 中各自显示此内容,只需替换
result += text1 + " " + text2 + "\\n";
with result += text1 + " " + text2 + "<br>";
result += text1 + " " + text2 + "<br>";
and alert(result);
和
alert(result);
with document.getElementById("myelem").innerHTML = result;
与
document.getElementById("myelem").innerHTML = result;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.