这一周是实训周主要练习了前端的知识点,和算法练习
1.HTML布局:通过语义化标签构建页面结构,以`.card` `.search`等类名划分模块,包含搜索框、天气信息展示区和页脚,结构清晰且便于CSS样式关联,输入框通过`spellcheck="false"`禁用拼写检查。
CSS与HTML分离:通过`<link rel="stylesheet" href="style.css">`引入外部样式表,实现内容与样式解耦,提升代码可维护性。
JavaScript核心功能:
DOM操作:利用`querySelector`获取页面元素,动态更新温度(`.temp`)、城市名(`.city`)、湿度(`.humidity`)、风速(`.wind`)等数据,并根据天气类型(如`Clouds` `Rain`)切换对应图标。
异步请求与API调用:使用`fetch`接口调用OpenWeather API,通过`async/await`处理异步操作;URL构造采用模板字符串,结合`encodeURIComponent`处理城市名防乱码,`units=metric`指定公制单位,同时通过`response.ok`校验HTTP状态码,`try/catch`捕获异常并提示“City not found”。
事件驱动交互:为搜索按钮绑定点击事件,输入框监听回车键(`keyup`事件),触发`checkWeather`函数执行查询,初始默认加载伦敦天气数据,提升用户体验。
2.算法:主要了解了数组的前缀和,链表的定义和移除链表节点