哦加哦二面小结

2017-11-17  本文已影响0人  芸芸人海之中独独遇见你

面试持续了40分钟,公司统一使用Mac办公,工作环境优雅,不足的地方还是自己太菜了= =
二面不比一面好,考察的主要是基础,还有一些细节的东西,平时真得应该注意并记录这些东西,以后面试才不会显得那么窘迫。。

1,in操作符和hasOwnPrototype的区别

首先,in操作符可以作用于数组也可以作用于对象
for...in...遍历作用于数组时返回数组的下标,for...in...作用于对象时,可以遍历对象的属性

引自js高程
in操作符,无论该属性存在于实例中还是存在于原型中,都会返回true。
而hasOwnproperty只有属性存在于实例中时,才返回true,存在于原型中的属性检测需要通过两者共同检验。

当in操作符返回true,hasOwnproperty返回false,则属性存在于原型中
当in操作符返回true,hasOwnproperty也返回true,则属性存在于实例中,也就是构造函数中所定义的。

2,delete操作符

给自己挖了一个坑。。。
delete操作符的本质是完全删除一个对象携带的实例属性
也就是说,如果该属性还存在于原型对象上的话,in操作符依然会返回true。
之前要删除数组中的同名属性还是只能使用filter和map(map会返回一个新的数组,新的数组储存没有此属性的值就好了)
而且,delete操作符删除一个元素之后,数组中依然存在这个元素,且留下一个undefined占位符,结束后也不会合并

delete
访问a[0]返回值为undefined
若动态把它设置为undefined,也依然会存在。
set undefined

3,最喜欢的一门学校课程

蒙了==,感觉面试官是五项全能冠军。。。
我答了计算机网络,有点虚,因为这块知识掌握的的确不牢靠。。。面试完之后回头想想,不知道答的什么玩意= =

计算机五层模型

实体层:硬件设施,用以建立、维护和拆除物理链路连接,在这一层,数据流的单位称为bit(比特)。
链路层链路层建立数据帧,实现更高效的传输方案,在这一层数据流的单位称为帧(frame)。这一层包含,以太网协议,MAC地址(网卡),广播,等。
网络层网络层将数据链路层提供的帧组成数据包,包中封装有网络层包头,其中含有逻辑地址信息- -源站点和目的站点地址的网络地址。网络层的任务就是选择合适的网间路由和交换结点, 确保数据及时传送。这一层的数据单位称为包(packet),ARP协议,IP协议都属于这一层。
传输层:UDP/TCP,TCP的数据单元称为段 (segments)而UDP协议的数据单元称为“数据报(datagrams),4层为上层提供端到端(最终用户到最终用户)的透明的(屏蔽了传输底层的具体细节)、可靠的数据传输服务。
应用层:http协议,FTP协议等,应用层为操作系统或网络应用程序提供访问网络服务的接口

4,javascript和java的区别

Java 与 JavaScript 之间的主要区别:

  1. Java 是一种 OOP 编程语言,而 Java Script 是一种 OOP 脚本语言。
  2. Java 创建在虚拟机或浏览器中运行的应用程序,而 JavaScript 代码仅在浏览器中运行。
  3. Java 代码需要进行编译,而 JavaScript 代码都在文本中。
  4. 它们需要不同的插件。

哇,这里面试官应该是想考我对原型的理解啊,当时一直往java方面想,要能往原型上讲就好了,舍本逐末,java果然快忘完了- -,js没有类的概念,而是依靠原型链来实现继承。可以看我之前的文章
JS中的构造函数,原型,原型链,继承

5,公司项目流程

应该是想考软件工程的基础,答完需求分析答主就已经不行了= =基础真的很重要,如果学弟看到,希望你从现在开始,好好听课,认真学习。

了解需求 --> 需求分析 --> 确定开发任务 --> 推进开发进度 --> 测试 --> 试点 --> 交付。

还问了很多延伸的问题,记不太清了,下了公司楼站在上海街头想找个人说话却不知到找谁,打开微信,点进你的主页又退出来。没开地图在路上溜达,他坐在茶楼品茶聊生意,他带着一个旅行团观光,他在门口吆喝生意,他在天桥底下淋着雨乞讨,其实大家当年都是一样的人,都有年少轻狂,意气风发,20出头的时候,时光兜兜转转,白驹过隙,渐渐的,大家却活出了不一样的人生,以后要怎么走,少年,希望你心中有数。

上一篇下一篇

猜你喜欢

热点阅读