javascript中的Repeat函数
你能告诉我如何从这4个函数中得到1个吗。因为它们都做一件事,只有一个参数一直在变化。 此外,我需要在函数每次运行时获取其值,并将其放入一个新变量中,以便在计算后可以使用javascript中的Repeat函数,javascript,function,Javascript,Function,你能告诉我如何从这4个函数中得到1个吗。因为它们都做一件事,只有一个参数一直在变化。 此外,我需要在函数每次运行时获取其值,并将其放入一个新变量中,以便在计算后可以使用 function getValue(age) { for (var i = 0; i < document.getElementsByName('age').length; i++) { if (document.getElementsByName('age')[i].checked)
function getValue(age)
{
for (var i = 0; i < document.getElementsByName('age').length; i++)
{
if (document.getElementsByName('age')[i].checked)
{
return document.getElementsByName('age')[i].value;
}
}
}
function getBmiValue()
{
for (var i = 0; i < document.getElementsByName('bmi').length; i++)
{
if (document.getElementsByName('bmi')[i].checked)
{
return document.getElementsByName('bmi')[i].value;
}
}
}
function getFamValue()
{
for (var i = 0; i < document.getElementsByName('fam').length; i++)
{
if (document.getElementsByName('fam')[i].checked)
{
return document.getElementsByName('fam')[i].value;
}
}
}
function getDietValue()
{
for (var i = 0; i < document.getElementsByName('diet').length; i++)
{
if (document.getElementsByName('diet')[i].checked)
{
return document.getElementsByName('diet')[i].value;
}
}
}
函数getValue(年龄)
{
for(var i=0;i
函数getValueByElementName(元素名称)
{
for(var i=0;i
或者进行一点优化:
function getValueByElementName(element_name)
{
var elements = document.getElementsByName(element_name);
for (var i = 0; i < elements.length; i++)
{
if (elements[i].checked)
return elements[i].value;
}
}
函数getValueByElementName(元素名称)
{
var elements=document.getElementsByName(元素名称);
对于(var i=0;i函数getValue(标记名)
{
对于(变量i=0;i
在此函数中将元素名称作为变量传递并调用它。下面是一个可以执行的示例:
function getValue(key) {
// get this once, not on each loop iteration
var elem = document.getElementsByName(key);
// cache the length too, so not to calculate it on each loop iteration
for (var i = 0, len = elem.length; i < len; i++) {
if (elem[i].checked) {
return elem[i].value;
// this will exit the function when it finds the FIRST one.
// Is that what you want?
}
}
}
// you can call above function like this:
getValue('age');
getValue('bmi');
getValue('fam');
getValue('diet');
函数getValue(键){
//获取一次,而不是每次循环迭代
var elem=document.getElementsByName(键);
//缓存长度,这样就不会在每次循环迭代中计算它
对于(变量i=0,len=elem.length;i
将元素名称作为参数传递给函数。您需要对语言语法有一个基本的了解,所以我建议您在进一步学习之前多学一点JavaScript。@plalx,谢谢。好主意。我已经更新了我的答案。
function getValue(tagname)
{
for (var i = 0; i < document.getElementsByName(tagname).length; i++)
{
if (document.getElementsByName(tagname)[i].checked)
{
return document.getElementsByName(tagname)[i].value;
}
}
}
function getValue(key) {
// get this once, not on each loop iteration
var elem = document.getElementsByName(key);
// cache the length too, so not to calculate it on each loop iteration
for (var i = 0, len = elem.length; i < len; i++) {
if (elem[i].checked) {
return elem[i].value;
// this will exit the function when it finds the FIRST one.
// Is that what you want?
}
}
}
// you can call above function like this:
getValue('age');
getValue('bmi');
getValue('fam');
getValue('diet');