javascript 如何在对象中使用参数存储 url

javascript how to store url with param in object

我想像这样在对象中存储 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还不存在所以我得到了一个错误。

Cannot read property 'latlon' of undefined

我url里面有很多参数不知道怎么处理

之前定义一下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'
},
...
];

因此,如果 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);

这个怎么样?

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');