
当通过url参数动态填充网页内容时,若参数缺失或为空,可通过条件判断为其设置友好默认值(如“friend”),确保页面始终显示合理文本。
在实际开发中,直接使用 URLSearchParams.get() 获取的参数值可能为 null(参数不存在)或空字符串 ""(参数存在但值为空,如 ?name=)。若不加判断直接赋值,会导致页面显示 “Hi there !”,体验不佳。因此,需对参数进行双重校验:既要检查是否为 null,也要检查是否为空字符串。
推荐写法如下(兼顾健壮性与可读性):
Hi there, !
⚠️ 注意事项:
- 使用 textContent 替代 innerHTML 更安全,可防止XSS风险(除非你明确需要渲染HTML);
- nameParam.trim() !== '' 能有效过滤仅含空格的无效输入(如 ?name=);
- 避免重复调用 urlParams.get('name')(如原答案中两次调用),既影响性能,也降低可维护性;
- 若需支持多语言或更复杂的回退逻辑(如根据用户地域显示“Mate”/“Kamerad”),建议封装为独立函数。
总结:一个健壮的回退机制 = 存在性检查(!= null) + 内容有效性检查(trim() !== '') + 安全的DOM写入方式。这样,无论 URL 是 domain.com?name=Steve、domain.com?name= 还是 domain.com,页面都能优雅显示 “Hi there, Steve!”、“Hi there, Friend!” 或 “Hi there, Friend!”。










