我的面试宝典助我完成大厂梦 自己来考考自己会多少

总是往前看,往钱看的。毕竟水往低处流,人往高处走。自从拥有了这份面试宝典,助我工资蹭蹭张,跳槽大厂不再是梦。看看你会多少道题吧。
面试真题(上)
1、自我介绍
2、如何实现一个倒计时功能,类似于蘑菇街中的秒杀。
3、怎么理解es6箭头函数中的this,它和一般函数的this指向有什么区别呢?
4、一个矩形,里面一个樱桃,过樱桃做一条直线, 并且没有数据和测量工具,如果做到评分矩形呢?
5、说一下同源策略
6、vue中的路由时如何管理的? 你知道他的实现方式吗?
7、提到了我的博客,问我的博客相关问题。
8、retina屏幕的了解
9、说一说移动端的布局。 flexible。
10、知道原理吗,怎么自己去实现一个flexible。 rem布局的实现原理。移动端的点透是什么,有没有了解
11、说一说异步编程的方式有哪些。
12、项目中的设计是怎么回事,说说设计方面。
13、你博客里的轮播图,如果还要优化,你会怎么去优化。
14、你最喜欢的es6中的特性是什么,为什么。
15、为什么选择前端(不是科班,这个问题经常被问。。。)
16、css布局的属性有哪些。
17、有没有遇到过这样的问题: 一个有border的div,里面有一个图片,发现图片和下面的border有一定的空隙(baseline)。
18、函数调用的方式有哪些。他们的区别是什么。
19、说一说原型链(这个要非常清楚)。
20、用过什么框架。jquery用过吗?
21、你实习公司的前端leader是谁。
22、给你一个项目,你使用jquery还是vue、react。为什么。(这个问题也是会被经常问到的)
23、说一说异步编程。
24、说一说回调地狱是什么,有什么问题。异常捕获怎么做。
25、说一说promise。 一个promise有多个then,如果第一个then出错,后面的还会执行吗,如何捕获异常。 如果第一个then出错了,我还想要后面的继续执行,应该怎么做。
26、你在学习js的时候,遇到过哪些js方面的坑、 你觉得js哪些知识会难一些。
27、 MVC 具有什么样的优势,各个模块之间怎么通信,比如点击 Button 后 怎么通知 Model?
28、两个无限长度链表(也就是可能有环) 判断有没有交点
29、UITableView 的相关优化
30、 KVO、Notification、delegate 各自的优缺点,效率还有使用场景
31、如何手动通知 KVO
32、Objective-C 中的 copy 方法
33、 runtime 中,SEL 和 IMP 的区别
34、autoreleasepool 的使用场景和原理
35、RunLoop 的实现原理和数据结构,什么时候会用到
36、block 为什么会有循环引用
37、使用 GCD 如何实现这个需求:A、B、C 三个任务并发,完成后执行任务 D。
38、NSOperation 和 GCD 的区别
39、CoreData 的使用,如何处理多线程问题
40、如何设计图片缓存?
41、有没有自己设计过网络控件?
42、怎么判断某个 cell 是否显示在屏幕上
43、进程和线程的区别
44、TCP 与 UDP 区别
45、TCP 流量控制
46、数组和链表的区别
47、UIView 生命周期
48、如果页面 A 跳转到 页面 B,A 的 viewDidDisappear 方法和 B 的 viewDidAppear 方法哪个先调用?
49、block 循环引用问题
50、ARC 的本质
51、RunLoop 的基本概念,它是怎么休眠的?
52、Autoreleasepool 什么时候释放,在什么场景下使用?
53、如何找到字符串中第一个不重复的字符
54、哈希表如何处理冲突
55、你的成绩怎么样? 为什么不学习原专业?
56、登录状态怎么保持?
57、为什么用本地存储,而不用session,session更加简单啊!
58、http和https的区别是什么? (http、https、http2这些都是经常被问到的)
59、post和get的区别是什么?
60、你会的技术有哪些?
61、你在学校社团是做什么的,你是做什么的?
62、为什么不愿意留在暑期实习的公司?
63、为什么要用Alamofire而不用原生的NSURLSession,Alamofire的优势是什么?
64、如果让你来封装一个网络库,类似于Alamofire或者SDWebImage,你会如何实现?
65、在网络库中,如何针对TableView快速滚动过程中的图片额外渲染进行优化(网络库不能持有TableView)?
66、iOS的系统架构是怎么样的?常用SDK有哪些?
67、了解HTTP协议吗?GET和POST的区别是什么?
68、对安全方面有何了解?如何应对web页面被劫持?了解HTTPS加密解密的过程吗
69、vue和react有什么区别?
70、angular用过吗?
71、说一下同源策略? 说一个JSONP? (同源策略和跨域的多种方式还是要很熟练的)
72、304和200的区别是什么。 (状态码也是必须要掌握的,包括各种区别)
73、你所知道的前端优化有哪些内容? (常考的问题,多多总结就好了)
74、linux知道吗? 你所知道的linux命令有哪些?
75、vue中v-if和v-show的区别是什么? (这个实在是记不住了,但是说明了vue不好就是因为api太多)
76、你看过哪些书? (比如计算机的几门专业课、JavaScript高级程序设计、css揭秘、你不知道的JavaScript、深入react技术栈、图解http等等)
77、你会的技术包括哪些
78、为什么不学习原专业,而是要转行。
79、为什么选择了北京而不是西安。
80、项目问题。
81、一个DOM树,其中有两个节点,找出这两个节点公共的父节点? (视频面试)
82、说一下二叉树?
83、如果反转二叉树?
84、简洁、对于不同的类型,如何做出对比?
85、说一下vue和react中的路由实现方式?
86、说一下强缓存和协商缓存? (浏览器的缓存机制也需要很清楚)
87、跨域?
88、说一下设计模式?
89、其中的一个项目,你究竟做了哪些优化?
90、websocket聊天室如果发送失败了,你怎么解决这个问题?如何做到发送图片? 有了文字、图片等不同的数据类型之后,你如何实现数据的存储,如何设计,前端如何获取?
91、websocket聊天室有输入框,那么怎么获取的,对于使用div来模仿textarea,我说使用正则去掉div,那么用户输入的也是div呢? 如果发送失败了呢? 究竟应该是先发送,还是应该先存储到redux中,考虑用户体验(仿照微信)。
92、为什么数据库使用的是mongodb而不是mysql。
93、什么是xss,如何防止xss?
94、边边购项目说一下?登录的整个过程是什么? 购物车是怎么存储设计的? 如果LocalStorage中数据的值超过了范围,你该如何去处理这个问题? 如果商品下架了,那么你如何显示这个商品? 登录的过程中,一个用户退出登录,另一个用户登录,那么这个购物车是否还是存在的。 说一下边边购项目的多个不同的模块。
95、说一下你说的项目中遇到的问题,然后你是如何解决这个问题的? (这个可以好好准备一下~)
96、websocket的使用,底层是如何处理的。(类似于xhr的。)、
97、websocket在连接的过程中, 会有新包。。balabala 一堆听不懂的词,非常尴尬,,, 我就直接说的不会。
98、手写代码 判断是否是浏览器环境。
99、http和https https的整个过程画一下
100、httPS需要多少时间 比http慢多少 怎么优化
不懂的可以留言 互相在讨论区讨论交流

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: android面试大厂必考174题是一道比较常见的面试题,主要考察对Android基础知识的掌握和应用能力。 174题是关于Android中Activity的生命周期的问题。Activity是Android应用的基本组件之一,了解和掌握它的生命周期是开发Android应用的基本要求。 Activity的生命周期包括以下几个常用方法:onCreate()、onStart()、onResume()、onPause()、onStop()、onDestroy()等。这些方法分别在Activity的不同阶段被调用,用于管理Activity的状态和响应用户的操作。 在回答174题时,可以从以下几个方面回答: 1. 对于Activity的生命周期的理解:就是回答上述的onCreate()、onStart()、onResume()、onPause()、onStop()、onDestroy()等方法的作用和调用顺序。 2. 对于Activity状态的切换:从后台到前台、从前台到后台时,Activity的生命周期方法的调用顺序是什么。 3. Activity被销毁的场景:Activity被销毁的场景有哪些,例如用户主动退出、内存不足等。 4. 懂得如何管理Activity的状态和数据:例如在onSaveInstanceState()、onRestoreInstanceState()等方法中保存和恢复Activity的状态和数据。 5. 扩展性问题:除了上述常用方法外,你还知道其他的Activity生命周期相关的方法吗?它们有什么作用? 通过以上几个方面的回答,可以较全面地回答174题。同时,结合自己在实际开发中的经验和实践,给出一些实际的例子和场景,能够更好地展示自己的理解和应用能力,提升面试效果。 ### 回答2: Android面试中,174题是一个必考的问题,考察的是对于RecyclerView中的Item动画的理解和实践经验。 RecyclerView是Android中常用的列表型控件,能够高效地展示大量数据。为了提升用户体验,我们可以为RecyclerView中的Item添加动画效果,使界面更加生动。 在实现RecyclerView的Item动画时,我们可以使用Android提供的默认动画效果,比如淡入淡出、平移、缩放、旋转等,也可以使用属性动画自定义动画效果。 当我们需要自定义动画效果时,可以通过RecyclerView.ItemAnimator类来实现。我们需要重写四个方法: 1. canReuseUpdatedViewHolder():判断是否可以复用已更新的ViewHolder。 2. animateAdd():为添加的Item添加动画效果。 3. animateMove():为移动的Item添加动画效果。 4. animateRemove():为删除的Item添加动画效果。 在实现这些方法时,我们可以使用属性动画,通过修改Item的属性值来实现平移、缩放等效果。同时,还可以配合插值器(Interpolator)来调整动画的速度曲线。 除了自定义动画效果外,我们还可以通过RecyclerView.ItemDecoration类来实现对Item的装饰效果,比如分割线、间隔等。这样可以让RecyclerView的布局更加美观和易读。 总结起来,动画在Android应用开发中起着重要的作用,可以提升用户体验。在面试中,了解RecyclerView的Item动画实现原理和实践经验是必备的。我们需要熟练掌握默认动画效果的使用,同时能够自定义动画效果,并且理解RecyclerView.ItemAnimator和RecyclerView.ItemDecoration的用法。 ### 回答3: Android面试大厂必考的174题主要针对Android开发相关的知识、技术和经验进行考察。下面我将对其中一些常见的问题进行回答。 1. 请介绍一下Activity的生命周期。 Activity的生命周期包括:onCreate()、onStart()、onResume()、onPause()、onStop()、onRestart()和onDestroy()。onCreate()在Activity被创建时调用,用于初始化Activity的状态和布局;onStart()在Activity可见但未获取焦点时调用;onResume()在Activity获取焦点时调用,此时Activity处于运行状态;onPause()在Activity失去焦点、但仍可见时调用,通常用于保存数据或释放资源;onStop()在Activity不再可见时调用,可以一些清理工作;onRestart()在Activity重新展示时调用;onDestroy()在Activity被销毁时调用。 2. 请说明Android中的四种存储方式。 Android中的四种存储方式分别为:SharedPreferences、文件存储、数据库存储和网络存储。 - SharedPreferences是一种轻量级的存储方式,用于存储少量的键值对数据,适用于存储一些简单的配置信息。 - 文件存储用于存储大量的非结构化数据,可以使用FileOutputStream和FileInputStream进行读写操作。 - 数据库存储使用SQLite数据库来持久化保存结构化数据,可以通过SQLiteOpenHelper来创建和管理数据库。 - 网络存储通过与服务器进行通信,将数据存储在服务器上,常见的方式有HTTP请求和WebSocket。 3. 请解释一下Android中的消息机制。 Android中的消息机制主要用于不同组件之间的通信和线程间的通信。它基于“消息队列”和“消息循环”的概念,核心类为Handler、Message和Looper。 - Handler:Handler负责发送和处理消息,通过sendMessage()方法发送消息,通过handleMessage()方法处理消息。 - Message:Message对象封装了消息的内容,包括消息类型和数据。 - Looper:Looper用于管理MessageQueue,不断从MessageQueue中取出消息并将其分发到对应的Handler进行处理。 通过使用消息机制,可以实现不同线程之间的通信,例如在子线程中下载数据完成后,使用Handler将结果传递给主线程进行UI更新。 以上是对部分Android面试大厂必考的174题的回答,希望能对您有所帮

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值