.NET研发人员面试题

Posted 极简

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了.NET研发人员面试题相关的知识,希望对你有一定的参考价值。

1、简述javascript中的“=、==、===”的区别?

=赋值

==比较是否一般相等   "3"==3 //true

===比较是否严格相等 "3"==3 //false 

 

2、看下列代码输出为何?解释原因
var a = null;
alert(typeof a); 
var b;
alert(typeof b);
alert(c);

a为null,也是一个对象,所以typeof(a)为object.

b只有声明没有定义,因此typeof(b)为undefinded.

c没有声明也没有定义,因此alert(c)会出现error.


3、编写javascript代码实现把两个数组合并,并删除第二个元素。

合并js数组用concat方法,array1.concat(array2)。

删除元素用splice方法,splice(1,1),函数原型splice(index,count),指从数组索引1处开始删除1个元素,即删除第二个元素。


4、简述javascript的作用域和闭包

js变量的作用域是指:函数内定义的局部变量只在此函数内有效,而全局变量可以全局有效。

闭包的作用就在于能够改变局部变量的作用域,将值保存下来,但是如果使用不当会造成无法回收变量,引起性能问题,甚至崩溃。


5、列举你用过的javascript框架,并简述它们的优缺点

js框架:jQuery EasyUI、ExtJS、Bootstrap、AngularJS等等。

jQuery EasyUI:轻量级web前端ui开发框架,尤其适合MIS系统的界面开发,能够重用jquery插件。

ExtJS:统一的前端UI开发框架,学习难度中等。尤其适合MIS系统的界面开发,开发文档和例子代码都比较完整。缺点是大量的js脚本,降低了运行速度。

Bootstrap:响应式网站开发框架,优点是降低了后端开发人员开发前端页面的难度,统一了界面风格,缺点是界面风格比较单一。

AngularJS:将java后端的优秀特性引入到了js前端,大而全的框架。缺点是学习曲线高,Angular2几乎重写。


6、简述a.Equals(b)和a==b的区别?

Equals方法比较内容(值是否相等),==比较引用地址(是否指向同一个对象)。


7、ASP.NET的Application、Session、Cookie、ViewState和Cache等变量的区别是什么?

Application 应用程序级别

Session 会话级别用户跟踪

Cookie 客户端存储少量信息

ViewState 保持ASP.NET控件状态的机制

Cache 缓存


8、列举ASP.NET MVC ActionResult的返回值有几种类型?

主要有View(视图)、PartialView(部分视图)、Content(内容)、Json(Json字符串)、Javascript(js脚本)、File(文件)等几种类型。


9、简述ASP.NET WebApi相对于ASP.NET MVC的优点?
10、简述ASP.NET请求的生命周期?
11、ORM中的延迟加载与直接加载有什么异同?
12、简述Func<T>与Action<T>的区别?
13、开启一个异步线程的几种方式?多线程编程时的注意事项?
14、简述Linq是什么,以及Linq的原理?并编写一个Linq to Object的示例代码

Linq(Language Integrated Query),

示例代码:linq分组统计

var result = from p in list.AsEnumerable() 
             group p by p.Province into g 
             select new 
             { 
                 g.Key, 
                 SumValue = g.Sum(p => p.Value) 
             }; 
result.ToList().ForEach((i) => 
{ 
    Console.WriteLine(i.Key + ":" + i.SumValue); 
}); 

 

15、简述面向对象的特性有哪些?你是如何理解的?

继承、封装、多态。


16、列举你所知道的设计模式?你在真实项目中使用过的有哪些?有什么心得?

单例模式、模板方法、工厂模式、外观模式


17、编写SQL从A表中查出Name字段重复三条以上的记录,并编写SQL删除这些重复记录

 

以上是关于.NET研发人员面试题的主要内容,如果未能解决你的问题,请参考以下文章

c#.NetC#面试题(.net开发人员必备)100题

程序员面试修炼 | 腾讯研发类面试题总结

100道C#面试题(.net开发人员必备)

Java研发岗必问30+道高级面试题,干货满满!

Java研发方向如何准备BAT技术面试答案(上)

前端面试题之手写promise