/**
* Encodes a text string as a valid component of a Uniform Resource Identifier (URI).
* @param uriComponent A value representing an unencoded URI component.
*/
declare function encodeURIComponent(uriComponent: string | number | boolean): string;
示例:
// Encodes characters such as ?,=,/,&,:
console.log(`?x=${encodeURIComponent('test?')}`);
// Expected output: "?x=test%3F"
console.log(`?x=${encodeURIComponent('шеллы')}`);
// Expected output: "?x=%D1%88%D0%B5%D0%BB%D0%BB%D1%8B"
2条答案
按热度按时间vyswwuz21#
从技术上讲,要将字符串编码为URL安全值,您只需通过urllib的解析器运行它:
但是,您要求的是自定义转换。你可以使用一些内置的字符串和正则表达式库来实现:
如果您希望允许超过
a-z
、0-9
和-
的值“有效”,则需要扩展正则表达式。mzillmmw2#
您可以使用ES5库中的encodeURIComponent。
示例: