.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)为undefined.
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的优点?
WebApi消息处理管道独立于ASP.NET平台,支持多种寄宿方式。
10、简述ASP.NET请求的生命周期?
用户从 Web 服务器请求应用程序资源->ASP.NET 接收对应用程序的第一个请求->为每个请求创建 ASP.NET 核心对象->将HttpApplication对象分配给请求->由HttpApplication 管线处理请求
refer: https://msdn.microsoft.com/zh-cn/library/ms178473(v=vs.100).aspx
11、ORM中的延迟加载与直接加载有什么异同?
延迟加载(Lazy Loading)只在真正需要进行数据操作的时候再进行加载数据,可以减少不必要的开销。
12、简述Func<T>与Action<T>的区别?
Func<T>是有返回值的委托,Action<T>是没有返回值的委托。
13、开启一个异步线程的几种方式?多线程编程时的注意事项?
APM(Asynchrocous Programming Model,比如:BeginXXX、IAsyncResult)、EAP(Event-Based Asynchronous Pattern,比如:DownloadContentAsync)、TPL(Task Parallel Library,比如:Task.Factory.StartNew)、async/await。
线程饿死、线程死锁、线程同步、线程安全。
14、简述Linq是什么,以及Linq的原理?并编写一个Linq to Object的示例代码
Linq(Language Integrated Query),其中Linq to Object是对Enumberable扩展方法的调用,在执行时会转化为Lambda然后执行。
示例代码: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、简述面向对象的特性有哪些?你是如何理解的?
继承(inheritance)、封装(encapsulation)、多态(polymorphism)。
16、列举你所知道的设计模式?你在真实项目中使用过的有哪些?有什么心得?
单例模式、模板方法、工厂模式、外观模式、策略模式等。
17、编写SQL从A表中查出Name字段重复三条以上的记录,并编写SQL删除这些重复记录
查询Name字段记录重复三条以上的记录
select name from A group by name having count(name)>3
删除重复记录
if exists(select * from sysobjects where name = 'tempA')
drop table tempA
select ROW_NUMBER() over (order by name ) as rowid, name into tempA from A select * from tempA --删除重复记录,只保留rowid最小的那一行
delete from tempA where name in
(select name from tempA group by name having count(name)>3)
and rowid not in (select min(rowid) from tempA group by name having count(name)>3) select * from tempA
.Net 面试题 汇总(五)的更多相关文章
- Linux面试题汇总答案
转自:小女生的Linux技术~~~Linux面试题汇总答案~~ 一.填空题:1. 在Linux系统中,以 文件 方式访问设备 .2. Linux内核引导时,从文件 /etc/fstab 中读取要加载的 ...
- 收藏所用C#技术类面试、笔试题汇总
技术类面试.笔试题汇总 注:标明*的问题属于选择性掌握的内容,能掌握更好,没掌握也没关系. 下面的参考解答只是帮助大家理解,不用背,面试题.笔试题千变万化,不要梦想着把题覆盖了,下面的题是供大家查漏补 ...
- php面试题汇总二(基础篇附答案)
介绍一些php常见面试题及答案,都是平时面试的时候经常会遇到的,小伙伴们仔细了解下吧.接着上一篇php面试题汇总一(基础篇附答案) 1.在PHP中,当前脚本的名称(不包括路径和查询字符串)记录在预定义 ...
- c#面试题汇总(1)
c#面试题汇总 From: https://www.cnblogs.com/suzhiyong1988/p/5069385.html 下面的参考解答只是帮助大家理解,不用背,面试题.笔试题千变万化 ...
- PHP 高级工程面试题汇总
PHP高级工程面试题汇总(2018.05) 1.给你四个坐标点,判断它们能不能组成一个矩形,如判断([0,0],[0,1],[1,1],[1,0])能组成一个矩形. 勾股定理,矩形是对角线相等的四边形 ...
- 秒杀多线程第一篇 多线程笔试面试题汇总 ZZ 【多线程】
http://blog.csdn.net/morewindows/article/details/7392749 系列前言 本系列是本人参加微软亚洲研究院,腾讯研究院,迅雷面试时整理的,另外也加入一些 ...
- Linux面试题汇总答案(转)
转自:小女生的Linux技术~~~Linux面试题汇总答案~~ 一.填空题:1. 在Linux系统中,以 文件 方式访问设备 .2. Linux内核引导时,从文件 /etc/fstab 中读取要加载的 ...
- AJAX笔试面试题汇总
AJAX笔试面试题汇总 Javascript 1. 什么是ajax,为什么要使用Ajax(请谈一下你对Ajax的认识) 什么是ajax: AJAX是“Asynchronous JavaScript a ...
- C语言面试题汇总之一
C语言面试题汇总之一 1.static有什么用途?(请至少说明两种) l 限制变量的作用域: 设置变量的存储域. 2.引用和指针有什么区别? 引用必须被初始化,指针不必: 引用初始化以后不能被改变,指 ...
- Python面试题汇总
原文:http://blog.csdn.net/jerry_1126/article/details/44023949 拿网络上关于Python的面试题汇总了,给出了自认为合理的答案,有些题目不错,可 ...
随机推荐
- 第六周 day6 python学习笔记
1.Python面向对象编程OOP(Object Oriented Programming) 封装:可以隐藏实现细节,使代码模块化 继承:可以扩展已存在的代码模块,可以使代码实现重用 多态:一种接口, ...
- temp表空间被过多占用处理方法
这个步骤比较简单,查询v$sort_usage就可以了: (select username,session_addr,sql_id,contents,segtype,blocks*8/1024/102 ...
- 二、基于事件的异步编程模式(EAP)
一.引言 在上一个专题中为大家介绍了.NET 1.0中提出来的异步编程模式--APM,虽然APM为我们实现异步编程提供了一定的支持,同时它也存在着一些明显的问题--不支持对异步操作的取消和没有提供对进 ...
- windows 安装redis并注册服务
windows下载地址 https://github.com/MSOpenTech/redis/releases 启动:redis-server redis.windows.conf ...
- Java时间格式化时YYYY(大写)和yyyy(小写)的区别
在Java中,我们大多数情况下格式日期都是用的SimpleDateFormat,比如说把一个日期格式成"yyyy-MM-dd"的形式. 我们要注意的是,对于年份来说,大写的Y和小写 ...
- ADF中VO的查询方法比较
getRowCount(),getQueryHitCount(oracle.jbo.server.ViewRowSetImpl),getEstimatedRangePageCount,getCappe ...
- python 爬取猫眼下的榜单(一)--单个页面
#!/usr/bin/env python # -*- coding: utf- -*- # @Author: Dang Kai # @Date: -- :: # @Last Modified tim ...
- Selenium基础知识(元素定位的调试)
对一个不能直接定位的元素来说,调试是很常见的事,所以这里也简单总结了一下. 调试定位元素的工具很多,介绍也多,就不一一介绍了.下次有时间再补充.以下是我常用调试的方法(浏览器自带的控制台调试,仅介绍一 ...
- jar包解压
jar -xvf project.jar 解压到当前文件夹
- SSM项目之电商项目easymall(一)
一 环境准备 软件环境: 1 jdk1.8 JAVA_HOME:是给软件用的,各种启动的软件都会寻找JAVA_HOME的环境变量: Path:给windows用的: ...