logo

(Airbnb)给定一个输入框和一个返回 JSON 列表的接口:实现自动补全,支持键盘上下选择/回车确认,并处理请求竞态。

(Airbnb) Build an autocomplete input backed by an endpoint returning a JSON list; support keyboard navigation and handle request race conditions.

题目类型: 技术面试题

这是一道技术面试题,常见于澳洲IT公司面试中。

难度: medium

分类: User Interface Coding, System Design

标签: Airbnb, Autocomplete, A11y

参考答案摘要

核心交互 input 变化时发请求拿候选项,渲染下拉列表。 键盘:↑/↓ 移动高亮项;Enter 选择;Esc 关闭;Tab 按产品需求决定是否选中。 鼠标:hover 高亮,click 选中。 网络与性能 对输入做 debounce (如 150~300ms)。 用 AbortController 取消上一请求,或用递增的 requestId 忽略过期响应,解决竞态。 空查询/过短查询直接不请求...

本题提供 STAR 原则详细解答和技术解析,登录匠人学院学习中心即可查看完整答案。

← 返回面试题库

(Airbnb)给定一个输入框和一个返回 JSON 列表的接口:实现自动补全,支持键盘上下选择/回车确认,并处理请求竞态。

Mediumjavascriptdomaccessibilitynetworking

想查看完整答案?

登录匠人学院学习中心,获取 STAR 格式回答和详细技术解析

前往学习中心查看答案