我想在这样的对象中存储带有param的url:
var list = [
{
name: 'Hello world',
url: 'http://www.thisismyurl.com/' + latlon + '/endofmyurl'
},
{
name: 'Hello world2',
url: 'http://www.thisismyurl2.com/' + latlon + '/endofmyurl'
},
...
];
那么当我想提出请求时,我可以使用url并通过真正的latlon更改变量latlon。但是一开始我的latlon还不存在所以我得到了一个错误。
无法读取未定义的属性'latlon'
我在网址中有很多参数,所以我不知道如何处理它
答案 0 :(得分:0)
以前定义latlon。
var latlon = 'lat/27.664827/lon/-81.515754';
var list = [
{
name: 'Hello world',
url: 'http://www.thisismyurl.com/' + latlon + '/endofmyurl'
},
{
name: 'Hello world2',
url: 'http://www.thisismyurl2.com/' + latlon + '/endofmyurl'
},
...
];
答案 1 :(得分:0)
所以,如果latlon还不存在,那么你可以在它存在时调用该代码块,这应该可以解决你的问题。最简单的方法是将它包装在这样的函数中:
var getList = function (latlon) {
return [
{
name: 'Hello world',
url: 'http://www.thisismyurl.com/' + latlon + '/endofmyurl'
},
{
name: 'Hello world2',
url: 'http://www.thisismyurl2.com/' + latlon + '/endofmyurl'
}
];
}
var latlon = "hereismystring";
getList(latlon);
答案 2 :(得分:0)
这是怎么回事?
var list = Array();
function addObj(name, url, latlon){
list.push({
name: name,
url: url[0] + latlon + url[1]
})
}
addObj('Hello world', ['http://www.thisismyurl.com/', '/endofmyurl'], '27.664827-81.515754');