我有一个返回字符串的函数,我需要多次调用该函数并将结果放入一个变量中。将从javascript函数返回的值赋给变量
我有这样的:
function GetValue() {
... Do Something ...
console.log(string); // displays 'string'
return string;
}
而且我试图函数的输出分配到另一个函数的变量。目前,我这样做:
var theString = GetValue();
console.log(theString); // displays 'undefined'
我不明白的是在功能控制台输出显示值,但它分配变量函数的输出后,事实并非如此。
很明显,这不是将函数的输出分配给变量的方法。那我该怎么做?
[附加信息]
显然,我在为我的示例代码短暂的尝试只会造成混乱。
这里是全功能的,我需要调用从其他地方多次在javascript文件:
/*
* Build URL link
*/
function BuildUrlTargetFolder() {
// Get the current url and remove the 'zipCodes/branchAdmin' part of it for the branch url link
var urlArray = window.location.href.split('/'),
targetLength = urlArray.length - 3,
i,
targetFolder = '';
for (i = 0; i < targetLength; i++) {
// Only add a slash after the 'http:' element of the array
if (i === 0) {
targetFolder += urlArray[i];
} else {
targetFolder += '/' + urlArray[i];
}
}
console.log('targetFolder: ' + targetFolder); // console output is the current url minus two "levels"
return targetFolder;
}
下面是需要使用该函数的地方之一:
var targetFolder = BuildUrlTargetFolder();
console.log('targetFolder: ' . targetFolder); // console output: "undefined"
// If the url has a value, set the href attribute for the branch link otherwise hide the url
if (data['url'] !== '') {
$('a#branchLink').attr('href', targetFolder + '/index.php/coverage-area/' + data['url']).show();
} else {
$('a#branchLink').attr('href', '#').hide();
}
所以,话说回来,我如何从分配给调用代码变量的函数中获取字符串?
适用于我:http://jsfiddle.net/zzzHz/ –
您的控制台中是否有任何错误?如何创建'string'? GetValue是否在范围内? –
你想让函数GetValue()的输出成为字符串的类型吗?一般来说,我认为你不应该把一个变量命名为一个类型。考虑改变变量名'string'。 –