Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从单个URL获取多个参数的最新密钥参数?_Javascript_Html_Reactjs_Typescript - Fatal编程技术网

Javascript 从单个URL获取多个参数的最新密钥参数?

Javascript 从单个URL获取多个参数的最新密钥参数?,javascript,html,reactjs,typescript,Javascript,Html,Reactjs,Typescript,当用户在“a”页,并且在表单输入字段中写入了一些内容,然后从a页转到b页,再从b页回到a页,如果用户想从url获取数据,可以有两个相同的名称,例如这是url?name=james&name=alex 我的问题是如何获取最新的“名称”,例如namename=alex是新名称。以下是我如何从url获取的信息: const query=window.location.toString().split(“?”[1]; const urlParams=新的URLSearchParams(查询); con

当用户在“a”页,并且在表单输入字段中写入了一些内容,然后从a页转到b页,再从b页回到a页,如果用户想从url获取数据,可以有两个相同的名称,例如这是url
?name=james&name=alex
我的问题是如何获取最新的“名称”,例如name
name=alex
是新名称。以下是我如何从url获取的信息:

const query=window.location.toString().split(“?”[1];
const urlParams=新的URLSearchParams(查询);
const Name=urlparms.get(“Name”)| | props.order?.Name

这可能会对您有所帮助

函数getLatestParamFromUrl(param=”“){ constURL=新url(window.location.href); const values=url.searchParams.getAll(param); const latestValues=values.length>0?values.pop():false; return!!latestValues&&latestValues; }
log(getLatestParamFromUrl(“name”))此答案采用自

您应该将名称编码为数组,并将其设置为name参数。添加新名称时,请使用
Array.push(ITEM)
添加到末尾,并使用
Array[Array.length-1]
获取最近添加的项

//数组的URL:
函数URLToArray(url,参数){
返回url.substring(url.indexOf(param+'=')+param.length+1).split('&')[0]。split(''u');
}
//指向URL的数组:
函数ArrayToURL(数组,参数){
返回param+'='+array.join('');
}
/*************************************/
//然后,您可以这样使用:
//获取数组
var myArray=URLToArray('https://google.com?name=Bob_Joe_Tom&state=Alaska_Texas_Main","姓名",;
log(myArray);
//获取URL
myArray.push('Steph')//让我们向数组中添加一个名称
var myNameUrl='www.google.com?'+ArrayToURL(myArray,'name');

日志(myNameUrl)
每个参数都应该有自己的名称,例如
name=james&name1=alex
,但如果需要,可以使用相同的参数名称。看看这里:应该是的,但当我回来编辑同样的内容时,我将进入下一页,查看历史记录。推送/也尝试了历史记录。替换仍然获得两个或三个相同名称为什么不使用
localStorage
?知道如何将最新的“名称”从url添加到localstoragegetting Unfinedc您可以共享代码吗?或者是一个片段?如果URL中没有参数,这里的函数将返回false,如果有,那么它将返回latestone,请立即检查。我已经更新了代码,这应该可以工作。让我们来看看。