如何写个递归函数...把数组中的value进行urlencode?

如题,多位数组也要可以用。

阅读 2.3k
2 个回答
  const arr = [
    'http://www.ptbird.cn/阿四大时代',
    'http://www.ptbird.cn/阿四大时代', ['http://www.ptbird.cn/阿四大时代', 'http://www.ptbird.cn/阿四大时代', ['http://www.ptbird.cn/阿四大时代', 'http://www.ptbird.cn/阿四大时代']]
  ];
  function getUrlEncode(arr) {
    for (let i = 0, len = arr.length; i < len; i++) {
      if (arr[i] instanceof Array) {
        getUrlEncode(arr[i]);
      } else {
        arr[i] = encodeURI(arr[i]);
      }
    }
  }
  getUrlEncode(arr);
  console.log(arr);

clipboard.png

function recursiveUrlencode($arr)
{
    foreach ($arr as $key => $value) {
        if (is_array($value)) {
            $arr[$key] = recursiveUrlencode($value);
        } else {
            $arr[$key] = urlencode($value);
        }
    }
    return $arr;
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题