Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/447.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_Encoding - Fatal编程技术网

javascript:如何对包含破折号(-)的字符串进行URL编码?

javascript:如何对包含破折号(-)的字符串进行URL编码?,javascript,encoding,Javascript,Encoding,我有一个表示实体名称的字符串。此实体的名称中有一个破折号(-)。如何对破折号进行编码?我认为应该将其编码为“%2D”,但当我尝试使用encodeURIComponent()或encodeURI()时,它不会对破折号进行编码。我只是想知道是否有一个encode函数可以对破折号进行编码,而不仅仅是执行一个。replace-是一个出现在ASCII字符集中的字符,在URL中没有特殊意义。虽然您可以将其编码为%2D,但这样做既不需要也不正常。编码它就像使用%61而不是a 没有标准的编码函数可以对-字符进行

我有一个表示实体名称的字符串。此实体的名称中有一个破折号(-)。如何对破折号进行编码?我认为应该将其编码为“%2D”,但当我尝试使用encodeURIComponent()或encodeURI()时,它不会对破折号进行编码。我只是想知道是否有一个encode函数可以对破折号进行编码,而不仅仅是执行一个。replace

-
是一个出现在ASCII字符集中的字符,在URL中没有特殊意义。虽然您可以将其编码为
%2D
,但这样做既不需要也不正常。编码它就像使用
%61
而不是
a


没有标准的编码函数可以对
-
字符进行编码
replace
是一个合乎逻辑的选择,如果您真的非常想这样做。

它不需要在URL中进行编码,如果您想用%表示法,您需要自己替换它。(在通过encode*()进行任何其他编码之后)谢谢,我想我的用例是独一无二的,可能暗示了设计缺陷。但我们正在用破折号(-)替换空格,以构建指向实体的URL。然后,当我们的应用程序路由到其中一个URL时,我们将URL中的破折号替换为空格并获取实体。当我意识到实体名称中已经有破折号时,我的问题就出现了。现在我在考虑是否有必要重新设计我们如何用破折号等替换空格。