美文网首页面试题
面试题(四)

面试题(四)

作者: 福尔摩鸡 | 来源:发表于2017-04-09 10:25 被阅读795次

    3月22日

    1. DOM操作——怎样添加、移除、移动、复制、创建和查找节点?

    • 创建新节点

      createDocumentFragment() //创建一个DOM片段
      createElement_x()         //创建一个具体的元素
      createTextNode()          //创建一个文本节点
      
    • 添加、移除、替换、插入

      appendChild()
      removeChild()
      replaceChild()
      insertBefore()
      
    • 查找

      getElementsByTagName()    //通过标签名称
      getElementsByName()       //通过元素的Name属性的值
      getElementById()      //通过元素Id,唯一性
      

    2. 数组和对象有哪些原生方法,列举一下?

    • 数组

      Array.concat( )       //连接数组 
      Array.join( )             //将数组元素连接起来以构建一个字符串 
      Array.length          //数组的大小 
      Array.pop( )          //删除并返回数组的最后一个元素 
      Array.push( )             //给数组添加元素 
      Array.reverse( )      //颠倒数组中元素的顺序 
      Array.shift( )            //将元素移出数组 
      Array.slice( )            //返回数组的一部分 
      Array.sort( )             //对数组元素进行排序 
      Array.splice( )       //插入、删除或替换数组的元素 
      Array.toLocaleString( ) //把数组转换成局部字符串 
      Array.toString( )         //将数组转换成一个字符串 
      Array.unshift( )      //在数组头部插入一个元素
      
    • 对象

      Object.hasOwnProperty( )      //检查属性是否被继承 
      Object.isPrototypeOf( )       //一个对象是否是另一个对象的原型 
      Object.propertyIsEnumerable( )    //是否可以通过for/in循环看到属性 
      Object.toLocaleString( )      //返回对象的本地字符串表示 
      Object.toString( )                //定义一个对象的字符串表示 
      Object.valueOf( )                 //指定对象的原始值
      

    3. 如何编写高性能的Javascript?

    • 使用 DocumentFragment 优化多次 append
    • 通过模板元素 clone ,替代 createElement
    • 使用一次 innerHTML 赋值代替构建 dom 元素
    • 使用 firstChild 和 nextSibling 代替 childNodes 遍历 dom 元素
    • 使用 Array 做为 StringBuffer ,代替字符串拼接的操作
    • 将循环控制量保存到局部变量
    • 顺序无关的遍历时,用 while 替代 for
    • 将条件分支,按可能性顺序从高到低排列
    • 在同一条件子的多( >2 )条件分支时,使用 switch 优于 if
    • 使用三目运算符替代条件分支
    • 需要不断执行的时候,优先考虑使用 setInterval

    4. 那些操作会造成内存泄漏?

    闭包,循环

    5. javascript对象的几种创建方式?

    1. 工厂模式
    2. 构造函数模式
    3. 原型模式
    4. 混合构造函数和原型模式
    5. 动态原型模式
    6. 寄生构造函数模式
    7. 稳妥构造函数模式

    6. javascript继承的 6 种方法?

    1. 原型链继承
    2. 借用构造函数继承
    3. 组合继承(原型+借用构造)
    4. 原型式继承
    5. 寄生式继承
    6. 寄生组合式继承

    7. eval是做什么的?

    1. 它的功能是把对应的字符串解析成JS代码并运行
    2. 应该避免使用eval,不安全,非常耗性能(2次,一次解析成js语句,一次执行)

    8. JavaScript 原型,原型链 ? 有什么特点?

    1. 原型对象也是普通的对象,是对象一个自带隐式的 proto 属性,原型也有可能有自己的原型,如果一个原型对象的原型不为 null 的话,我们就称之为原型链
    2. 原型链是由一些用来继承和共享属性的对象组成的(有限的)对象链

    9. 事件、IE与火狐的事件机制有什么区别? 如何阻止冒泡?

    1. 我们在网页中的某个操作(有的操作对应多个事件)。例如:当我们点击一个按钮就会产生一个事件。是可以被 JavaScript 侦测到的行为

    2. 事件处理机制:IE是事件冒泡、firefox同时支持两种事件模型,也就是:捕获型事件和冒泡型事件

    3. ev.stopPropagation();

      注意旧ie的方法:ev.cancelBubble = true;

    10. 简述一下Sass、Less,且说明区别?�

    他们是动态的样式语言,是CSS预处理器,CSS上的一种抽象层。他们是一种特殊的语法/语言而编译成CSS。

    变量符不一样,less是@,而Sass是$;

    Sass支持条件语句,可以使用if{}else{},for{}循环等等。而Less不支持;

    Sass是基于Ruby的,是在服务端处理的,而Less是需要引入less.js来处理Less代码输出Css到浏览器

    11. 简述一下JS中的闭包?

    闭包用的多的两个作用:读取函数内部的变量值;让这些变量值始终保存着(在内存中)。

    同时需要注意的是:闭包慎用,不滥用,不乱用,由于函数内部的变量都被保存在内存中,会导致内存消耗大。

    12. 说说你对this的理解?

    1. 构造函数中的this指向实例对象
    2. 原型方法中的this指向实例对象,与构造函数中的this指向相同
    3. 在非严格模式下,普通函数中的this指向window,在严格模式下,普通函数中的this指向undefined
    4. 对象方法中的this就是调用方法的对象
    5. 事件方法中的this指的是绑定事件的对象
    6. 定时函数中的this指的是window
    7. call或apply所调用的函数中的this就是call或apply中的第一个参数(该参数必须是引用类型)

    13. 分别阐述split(),slice(),splice(),join()?

    • join()用于把数组中的所有元素拼接起来放入一个字符串。所带的参数为分割字符串的分隔符,默认是以逗号分开。归属于Array
    • split()即把字符串分离开,以数组方式存储。归属于Stringstring
    • slice() 方法可从已有的数组中返回选定的元素。该方法并不会修改数组,而是返回一个子数组。如果想删除数组中的一段元素,应该使用方法 Array.splice()
    • splice() 方法向/从数组中添加/删除项目,然后返回被删除的项目。返回的是含有被删除的元素的数组。

    14. 如何阻止事件冒泡和默认事件?

    • 阻止浏览器的默认行为

      window.event?window.event.returnValue=false:e.preventDefault();

    • 停止事件冒泡

      window.event?window.event.cancelBubble=true:e.stopPropagation();

    • 原生JavaScript中,return false;只阻止默认行为,不阻止冒泡,jQuery中的return false;既阻止默认行为,又阻止冒泡

    15. 你用过require.js吗?它有什么特性?

    • 实现js文件的异步加载,避免网页失去响应;
    • 管理模块之间的依赖性,便于代码的编写和维护。

    3月23日

    1. 谈一下JS中的递归函数,并且用递归简单实现阶乘?

    递归即是程序在执行过程中不断调用自身的编程技巧,当然也必须要有一个明确的结束条件,不然就会陷入死循环。

    aaa
    

    2. 请用正则表达式写一个简单的邮箱验证。

    /^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/;
    

    3. 简述一下你对web性能优化的方案?

    1. 尽量减少 HTTP 请求
    2. 使用浏览器缓存
    3. 使用压缩组件
    4. 图片、JS的预载入
    5. 将脚本放在底部
    6. 将样式文件放在页面顶部
    7. 使用外部的JS和CSS
    8. 精简代码

    4. 在JS中有哪些会被隐式转换为false?

    Undefined、null、关键字false、NaN、零、空字符串

    5. 定时器setInterval有一个有名函数fn1,setInterval(fn1,500)与setInterval(fn1(),500)有什么区别?

    第一个是重复执行每500毫秒执行一次,后面一个只执行一次。

    6. 外部JS文件出现中文字符,会出现什么问题,怎么解决?

    会出现乱码,加charset=”GB2312”;

    7. 写一个通用的事件侦听器函数

    markyun.Event = {
        // 页面加载完成后
        readyEvent: function (fn) {
            if (fn == null) {
                fn = document;
            }
            var oldonload = window.onload;
            if (typeof window.onload != 'function') {
                window.onload = fn;
            } else {
                window.onload = function () {
                    oldonload();
                    fn();
                };
            }
        },
        // 视能力分别使用dom0||dom2||IE方式 来绑定事件
        // 参数: 操作的元素,事件名称 ,事件处理程序
        addEvent: function (element, type, handler) {
            if (element.addEventListener) {
                //事件类型、需要执行的函数、是否捕捉
                element.addEventListener(type, handler, false);
            } else if (element.attachEvent) {
                element.attachEvent('on' + type, function () {
                    handler.call(element);
                });
            } else {
                element['on' + type] = handler;
            }
        },
        // 移除事件
        removeEvent: function (element, type, handler) {
            if (element.removeEnentListener) {
                element.removeEnentListener(type, handler, false);
            } else if (element.datachEvent) {
                element.detachEvent('on' + type, handler);
            } else {
                element['on' + type] = null;
            }
        },
        // 阻止事件 (主要是事件冒泡,因为IE不支持事件捕获)
        stopPropagation: function (ev) {
            if (ev.stopPropagation) {
                ev.stopPropagation();
            } else {
                ev.cancelBubble = true;
            }
        },
        // 取消事件的默认行为
        preventDefault: function (event) {
            if (event.preventDefault) {
                event.preventDefault();
            } else {
                event.returnValue = false;
            }
        },
        // 获取事件目标
        getTarget: function (event) {
            return event.target || event.srcElement;
        },
        // 获取event对象的引用,取到事件的所有信息,确保随时能使用event;
        getEvent: function (e) {
            var ev = e || window.event;
            if (!ev) {
                var c = this.getEvent.caller;
                while (c) {
                    ev = c.arguments[0];
                    if (ev && Event == ev.constructor) {
                        break;
                    }
                    c = c.caller;
                }
            }
            return ev;
        }
    };
    

    8. JavaScript原型,原型链 ? 有什么特点?

    原型对象也是普通的对象,是对象一个自带隐式的 __proto__ 属性,原型也有可能有自己的原型,如果一个原型对象的原型不为null的话,我们就称之为原型链。

    原型链是由一些用来继承和共享属性的对象组成的(有限的)对象链。

    • JavaScript的数据对象有那些属性值?

      1. writable:这个属性的值是否可以改。
      2. configurable:这个属性的配置是否可以删除,修改。
      3. enumerable:这个属性是否能在for…in循环中遍历出来或在Object.keys中列举出来。
      4. value:属性值。
    • 当我们需要一个属性的时,Javascript引擎会先看当前对象中是否有这个属性, 如果没有的话,就会查找他的Prototype对象是否有这个属性。

      function clone(proto) {
        function Dummy() { }
        Dummy.prototype = proto;
        Dummy.prototype.constructor = Dummy;
        return new Dummy(); //等价于Object.create(Person);
      } 
      function object(old) {
        function F() {};
        F.prototype = old;
        return new F();
      }
      var newObj = object(oldObject);
      

    9. 什么是闭包(closure),为什么要用?

    执行say667()后,say667()闭包内部变量会存在,而闭包内部函数的内部变量不会存在.使得Javascript的垃圾回收机制GC不会收回say667()所占用的资源,因为say667()的内部函数的执行需要依赖say667()中的变量。这是对闭包作用的非常直白的描述.

    function say667() {
        // Local variable that ends up within closure
        var num = 666;
        var sayAlert = function () {
            alert(num);
        }
        num++;
        return sayAlert;
    }
    var sayAlert = say667();
    sayAlert()//执行结果应该弹出的667
    

    10. new操作符具体干了什么呢?

    1. 创建一个空对象,并且 this 变量引用该对象,同时还继承了该函数的原型。
    2. 属性和方法被加入到 this 引用的对象中。
    3. 新创建的对象由 this 所引用,并且最后隐式的返回 this 。

    11. JSON 的了解?

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它是基于JavaScript的一个子集。数据格式简单, 易于读写, 占用带宽小

    {'age':'12', 'name':'back'}

    12. js延迟加载的方式有哪些?

    defer和async、动态创建DOM方式(用得最多)、按需异步载入js

    13. 模块化怎么做?

    //立即执行函数,不暴露私有成员
    var module1 = (function () {
        var _count = 0;
        var m1 = function () {
            //...
        };
        var m2 = function () {
            //...
        };
        return {
            m1: m1,
            m2: m2
        };
    })();
    

    14. 异步加载的方式

    • defer,只支持IE
    • async:
    • 创建script,插入到DOM中,加载完毕后callBack
    • documen.write和 innerHTML的区别
      • document.write只能重绘整个页面
      • innerHTML可以重绘页面的一部分

    15. 下列代码的输出结果是什么?

    (function(x){
        delete x;
        alert(x);
    })(1+5);
    

    函数参数无法delete删除,delete只能删除通过for in访问的属性。

    当然,删除失败也不会报错,所以代码运行会弹出“1”。

    3月24日

    1. JS中的call()和apply()方法的区别?

    function add(a,b){
        alert(a+b);
    }
    function sub(a,b){
        alert(a-b);
    }
    add.call(sub,3,1);  
    

    例子中用 add 来替换 sub,add.call(sub,3,1) == add(3,1) ,所以运行结果为:alert(4);

    注意:js 中的函数其实是对象,函数名是对 Function 对象的引用。

    2. Jquery与jQuery UI 有啥区别?

    • jQuery是一个js库,主要提供的功能是选择器,属性修改和事件绑定等等。

    • jQuery UI则是在jQuery的基础上,利用jQuery的扩展性,设计的插件。

      提供了一些常用的界面元素,诸如对话框、拖动行为、改变大小行为等等

    3. jquery 中如何将数组转化为json字符串,然后再转化回来?

    //jQuery中没有提供这个功能,所以你需要先编写两个jQuery的扩展:
    $.fn.stringifyArray = function(array) {
        return JSON.stringify(array)
    }
    $.fn.parseArray = function(array) {
        return JSON.parse(array)
    } 
    //然后调用:
    $("").stringifyArray(array)
    

    4. 前端开发的优化问题(看雅虎14条性能优化原则)

    1. 减少http请求次数:CSS Sprites, JS、CSS源码压缩、图片大小控制合适;网页Gzip,CDN托管,data缓存 ,图片服务器。
    2. 前端模板 JS+数据,减少由于HTML标签导致的带宽浪费,前端用变量保存AJAX请求结果,每次操作本地变量,不用请求,减少请求次数
    3. 用innerHTML代替DOM操作,减少DOM操作次数,优化javascript性能。
    4. 当需要设置的样式很多时设置className而不是直接操作style。
    5. 少用全局变量、缓存DOM节点查找的结果。减少IO读取操作。
    6. 避免使用CSS Expression(css表达式)又称Dynamic properties(动态属性)。
    7. 图片预加载,将样式表放在顶部,将脚本放在底部 加上时间戳。
    8. 避免在页面的主体布局中使用table,table要等其中的内容完全下载之后才会显示出来,显示比div+css布局慢。

    5. http状态码有那些?分别代表是什么意思?

    • 100-199 用于指定客户端应相应的某些动作。
    • 200-299 用于表示请求成功。
    • 300-399 用于已经移动的文件并且常被包含在定位头信息中指定新的地址信息。
    • 400-499 用于指出客户端的错误。
    • 400 语义有误,当前请求无法被服务器理解。
    • 401 当前请求需要用户验证
    • 403 服务器已经理解请求,但是拒绝执行它。
    • 500-599 用于支持服务器错误。
    • 503 – 服务不可用

    6. 一个页面从输入 URL 到页面加载显示完成,这个过程中都发生了什么?(流程说的越详细越好)

    • 要熟悉前后端的通信流程,最好把动态网站的背后细节也介绍一遍

    7. JQuery的源码看过吗?能不能简单概况一下它的实现原理?

    • 考察学习知识的态度,是否仅仅是停留在使用层面,要知其然知其所以然

    8. jQuery.fn的init方法返回的this指的是什么对象?为什么要返回this?

    • this执行init构造函数自身,其实就是jQuery实例对象,返回this是为了实现jQuery的链式操作

    9. jquery中如何将数组转化为json字符串,然后再转化回来?

    $.parseJSON('{"name":"John"}');
    

    10. jQuery 的属性拷贝(extend)的实现原理是什么,如何实现深拷贝?

    • 递归赋值

    11. jquery.extend 与 jquery.fn.extend的区别?

    Jquery.extend用来扩展jQuery对象本身;jquery.fn.extend用来扩展jQuery实例

    12. 谈一下Jquery中的bind(),live(),delegate(),on()的区别?

    aaa

    13. JQuery一个对象可以同时绑定多个事件,这是如何实现的?

    • 可以同时绑定多个事件,低层实现原理是使用addEventListner与attachEvent兼容处理做事件注册

    14. jQuery和Zepto的区别?各自的使用场景?

    jQuery主要用于pc端,当然有对应的jQuerymobile用于移动端,zepto比jQuery更加小巧,主要用于移动端

    15. 针对 jQuery 的优化方法?

    • 优先使用ID选择器
    • 在class前使用tag(标签名)
    • 给选择器一个上下文
    • 慎用 .live()方法(应该说尽量不要使用)
    • 使用data()方法存储临时变量

    3月25日

    1. Zepto的点透问题如何解决?

    点透主要是由于两个div重合,例如:一个div调用show(),一个div调用hide();这个时候当点击上面的div的时候就会影响到下面的那个div;

    解决办法主要有2种:

    1. github上有一个叫做fastclick的库,它也能规避移动设备上click事件的延迟响应,https://github.com/ftlabs/fastclick

      将它用script标签引入页面(该库支持AMD,于是你也可以按照AMD规范,用诸如require.js的模块加载器引入),并且在dom ready时初始化在body上,

    2. 根据分析,如果不引入其它类库,也不想自己按照上述fastclcik的思路再开发一套东西,需要1.一个优先于下面的“divClickUnder”捕获的事件;2.并且通过这个事件阻止掉默认行为(下面的“divClickUnder”对click事件的捕获,在ios的safari,click的捕获被认为和滚屏、点击输入框弹起键盘等一样,是一种浏览器默认行为,即可以被event.preventDefault()阻止的行为)。

    2. 知道各种JS框架(Angular, Backbone, Ember, React, Meteor, Knockout...)么? 能讲出他们各自的优点和缺点么?

    知识面的宽度,流行框架要多多熟悉

    3. Underscore 对哪些 JS 原生对象进行了扩展以及提供了哪些好用的函数方法?

    Underscore的熟悉程度�

    4. 使用过angular吗?angular中的过滤器是干什么用的?

    • 在表达式中转换数据<p>姓名为{{ lastName | uppercase }}</p>
    • currency,是什么过滤器——格式化数字为货币格式,单位是$符。

    5. 移动端最小触控区域是多大?

    移动端的点击事件的有延迟,时间是多久,为什么会有? 怎么解决这个延时?(click 有 300ms 延迟,为了实现safari的双击事件的设计,浏览器要知道你是不是要双击操作。)

    6. 对Node的优点和缺点提出自己的看法

    • (优点)因为Node是基于事件驱动和无阻塞的,所以非常适合处理并发请求,因此构建在Node上的代理服务器相比其他技术实现(如Ruby)的服务器表现要好得多。

      此外,与Node代理服务器交互的客户端代码是由javascript语言编写的,因此客户端和服务器端都用同一种语言编写,这是非常美妙的事情。

    • (缺点)Node是一个相对新的开源项目,所以不太稳定,它总是一直在变,而且缺少足够多的第三方库支持。看起来,就像是Ruby/Rails当年的样子(第三方库现在已经很丰富了,所以这个缺点可以说不存在了)。

    7. 需求:实现一个页面操作不会整页刷新的网站,并且能在浏览器前进、后退时正确响应。给出你的技术实现方案?

    至少给出自己的思路(url-hash,可以使用已有的一些框架history.js等)

    8. Node.js的适用场景?

    • 实时应用:如在线聊天,实时通知推送等等(如socket.io)
    • 分布式应用:通过高效的并行I/O使用已有的数据
    • 工具类应用:海量的工具,小到前端压缩部署(如grunt),大到桌面图形界面应用程序
    • 游戏类应用:游戏领域对实时和并发有很高的要求(如网易的pomelo框架)
    • 利用稳定接口提升Web渲染能力
    • 前后端编程语言环境统一:前端开发人员可以非常快速地切入到服务器端的开发(如著名的纯Javascript全栈式MEAN架构)

    9. (如果会用node)知道route, middleware, cluster, nodemon, pm2, server-side rendering么?

    Nodejs相关概念的理解程度

    10. 解释一下 Backbone 的 MVC 实现方式?

    流行的MVC架构模式

    11. 什么是“前端路由”?什么时候适合使用“前端路由”? “前端路由”有哪些优点和缺点?

    熟悉前后端通信相关知识

    12.常使用的库有哪些?常用的前端开发工具?开发过什么应用或组件?�

    • 使用率较高的框架有jQuery、YUI、Prototype、Dojo、Ext.js、Mootools等。尤其是jQuery,超过91%。
    • 轻量级框架有Modernizr、underscore.js、backbone.js、Raphael.js等。(理解这些框架的功能、性能、设计原理)
    • 前端开发工具:Sublime Text 、Eclipse、Notepad、Firebug、HttpWatch、Yslow。
    • 开发过的插件:城市选择插件,汽车型号选择插件、幻灯片插件。弹出层。(写过开源程序,加载器,js引擎更好)

    13. 对BFC规范的理解?

    Formatting Context:指页面中的一个渲染区域,并且拥有一套渲染规则,他决定了其子元素如何定位,以及与其他元素的相互关系和作用。

    14. 99%的网站都需要被重构是那本书上写的?

    网站重构:应用web标准进行设计(第2版)

    15. WEB应用从服务器主动推送Data到客户端有那些方式?

    • html5 websoket
    • WebSocket通过Flash
    • XHR长时间连接
    • XHR Multipart Streaming
    • 不可见的Iframe
    • <script>标签的长时间连接(可跨域)

    3月26日

    1. 加班的看法

    啊啊啊

    2. 平时如何管理你的项目,如何设计突发大规模并发架构?

    先期团队必须确定好全局样式(globe.css),编码模式(utf-8) 等

    编写习惯必须一致(例如都是采用继承式的写法,单样式都写成一行);

    标注样式编写人,各模块都及时标注(标注关键样式调用的地方);

    页面进行标注(例如 页面 模块 开始和结束);

    CSS跟HTML 分文件夹并行存放,命名都得统一(例如style.css)

    JS 分文件夹存放 命民以该JS 功能为准英文翻译;

    图片采用整合的 images.png png8 格式文件使用 尽量整合在一起使用方便将来的管理

    3. 那些操作会造成内存泄漏?

    内存泄漏指任何对象在您不再拥有或需要它之后仍然存在。

    垃圾回收器定期扫描对象,并计算引用了每个对象的其他对象的数量。如果一个对象的引用数量为 0(没有其他对象引用过该对象),或对该对象的惟一引用是循环的,那么该对象的内存即可回收。

    setTimeout 的第一个参数使用字符串而非函数的话,会引发内存泄漏。

    闭包、控制台日志、循环(在两个对象彼此引用且彼此保留时,就会产生一个循环)

    4. 你说你热爱前端,那么应该WEB行业的发展很关注吧? 说说最近最流行的一些东西吧?

    Node.js、Mongodb、npm、MVVM、MEAN、react、angularjs

    5. 你有了解我们公司吗?说说你的认识?

    嘿嘿嘿

    6. 移动端(比如:Android IOS)怎么做好用户体验?

    融入自己的设计理念,注重用户体验,选择合适的技术

    7. 你所知道的页面性能优化方法有那些?

    压缩、合并,减少请求,代码层析优化。。。

    8. 除了前端以外还了解什么其它技术么?你最最厉害的技能是什么?

    知识面宽度,最好熟悉一些后台语言,比如php,展现出自己的技术亮点

    9. AMD(Modules/Asynchronous-Definition)、CMD(Common Module Definition)规范区别?

    啊啊啊

    10. 谈谈你认为怎样做能使项目做的更好?

    考虑问题的深入,不仅仅停留在完成任务上,要精益求精

    11. 你对前端界面工程师这个职位是怎么样理解的?它的前景会怎么样?

    表现出对前端的认同与兴趣,关注相关技术前沿

    12. php中下面哪个函数可以打开一个文件,以对文件进行读和写操作?

    A.fget();B.file_open();C.fopen(); D.open_file();

    13. php中rmdir可以直接删除文件夹吗?该目录必须是空的,而且要有相应的权限--来自api

    A.任何文件夹都可以删除 B.空文件夹可以删除

    C.有权限的任何文件夹都可以删除 D.有权限的空文件夹可以删除

    14. phpinset和empty的区别,举例说明�

    1. empty函数
      • 用途:检测变量是否为空
      • 判断:如果 var 是非空或非零的值,则 empty() 返回 FALSE。换句话说,""、0、"0"、NULL、FALSE、array()、var $var; 以及没有任何属性的对象都将被认为是空的,如果 var 为空,则返回 TRUE。注意:empty() 只检测变量,检测任何非变量的东西都将导致解析错误。换句话说,后边的语句将不会起作用;
    2. isset函数
      • 用途:检测变量是否设置
      • 判断:检测变量是否设置,并且不是 NULL。如果已经使用 unset() 释放了一个变量之后,它将不再是 isset()。若使用 isset() 测试一个被设置成 NULL 的变量,将返回 FALSE。同时要注意的是一个NULL 字节("\0")并不等同于 PHP 的 NULL 常数。

    15. php中$_SERVER变量中如何得到当前执行脚本路径

    嗡嗡嗡

    3月27日

    1. 写一个php函数,要求两个日期字符串的天数差,如2012-02-05~2012-03-06的日期差数

    uuu

    2. 一个衣柜中放了许多杂乱的衬衫,如果让你去整理一下,使得更容易找到你想要的衣服;你会怎么做?请写出你的做法和思路?

    你你你

    3. 如何优化网页加载速度?

    1. 减少css,js文件数量及大小(减少重复性代码,代码重复利用),压缩CSS和Js代码
    2. 图片的大小
      1. 把css样式表放置顶部,把js放置页面底部
    3. 减少http请求数
    4. 使用外部 Js 和 CSS

    4. 工作流程,你怎么来实现页面设计图,你认为前端应该如何高质量完成工作?

    熟悉相关设计规范,自己总结的一些经验

    5. 介绍项目经验、合作开发、独立开发。

    团队协作,个人能力。实践经验

    6. 开发过程中遇到困难,如何解决。

    考察解决问题的能力

    7. 对前端界面工程师这个职位是怎么样理解的?它的前景会怎么样?

    前端是最贴近用户的程序员,比后端、数据库、产品经理、运营、安全都近。

    1. 实现界面交互
    2. 提升用户体验
    3. 有了Node.js,前端可以实现服务端的一些事情

    前端是最贴近用户的程序员,前端的能力就是能让产品从 90分进化到 100 分,甚至更好,

    参与项目,快速高质量完成实现效果图,精确到1px;

    与团队成员,UI设计,产品经理的沟通;

    做好的页面结构,页面重构和用户体验;

    处理hack,兼容、写出优美的代码格式;

    针对服务器的优化、拥抱最新前端技术。

    其它相关的加分项:

    1. 都使用和了解过哪些编辑器?都使用和了解过哪些日常工具?
    2. 都知道有哪些浏览器内核?开发过的项目都兼容哪些浏览器?
    3. 瀑布流布局或者流式布局是否有了解
    4. HTML5都有哪些新的API?
    5. 都用过什么代码调试工具?
    6. 是否有接触过或者了解过重构。
    7. 你遇到过比较难的技术问题是?你是如何解决的?

    整体素养的常见问题

    1.请你自我介绍一下你自己?

    (面试官目的:深度了解求职者,看求职者基本的沟通和自我认知能力)

    NO:

    1. 只说姓名、年龄、爱好等基本的信息后就没了。()
    2. 只重复简历里的内容,如工作经验就没了。
    3. 讲述长篇和求职职位无关的内容
    4. 没有礼貌,态度傲慢。
    5. 介绍过短或过长。

    YES:

    1. 除基本信息外,可以介绍个人的独特的地方。
    2. 强调跟应聘公司和应聘职位需要的开发技术和工作处理过程
    3. 紧扣开发的职位特点和个人能力
    4. 企业很重视一个人的礼貌,求职者要尊重考官,在回答每个问题之后都说一句“谢谢”,企业喜欢有礼貌的求职者。
    5. 时间在1-2分钟为宜

    2. 你觉得你个性上最大的优点是什么?(说说你最大的缺点?/朋友是怎么评价你的)

    这个有坑,缺点不能是致命的缺点,无关痛痒又太矫情

    (面试官目的:看求职者的优势和劣势,自我认知能力)

    NO:

    1. 跟程序员截然相反的性格点。如:喜欢挑战,有冒险精神等。
    2. 长篇大论,没有重点。
    3. 不实诚,给人滑头之感。

    YES:

    1. 程序猿需要的特质:如逻辑思维缜密,沉着冷静、条理清楚、立场坚定、顽强向上、乐于助人和关心他人、适应能力和幽默感、乐观和友爱
    2. 说优点时可以夹一些例子。
    • 延伸问题1:你朋友对你的评价?

      回答提示: 想从侧面了解一下你的性格及与人相处的问题。

      回答样本一:我的朋友都说我是一个可以信赖的人。因为,我一旦答应别人的事情,就一定会做到。如果我做不到,我就不会轻易许诺。

      回答样本二:我觉的我是一个比较随和的人,与不同的人都可以友好相处。在我与人相处时,我总是能站在别人的角度考虑问题

    • 延伸问题2:你欣赏哪种性格的人?

      回答提示:诚实、不死板而且容易相处的人、有“实际行动”的人

    • 延伸问题3:最能概括你自己的三个词是什么?

      回答提示:我经常用的三个词是:适应能力强,有责任心和做事有始终,结合具体例子向主考官解释

    3.你对加班的看法?

    (面试官目的:好多公司问这个问题,并不证明一定要加班,只是想测试求职者是否愿意为公司奉献。)
    NO:

    不愿意加班,不想加班。

    YES:

    如果是工作需要我会义不容辞加班,我现在单身,没有任何家庭负担,可以全身心的投入工作。但同时,我也会提高工作效率,减少不必要的加班。

    延伸问题1:假如你晚上要去送一个出国的同学去机场,可单位临时有事非你办不可,你怎么办?
    回答提示:我觉得工作是第一位的,但朋友间的情谊也是不能偏废的,这个问题我觉得要按照当时具体的情况来决定。
    ①如果我的朋友晚上9点的飞机,而我的加班八点就能够完成的话,那就最理想了,干完工作去机场,皆大欢喜。

    ②如果说工作不是很紧急,加班仅仅是为了明天上班的时候能把报告交到办公室,那完全可以跟领导打声招呼,先去机场然后回来加班,晚点睡就是了。

    ③如果工作很紧急,两者不可能兼顾的情况下,我觉得可以由两种选择。(1)如果不是全单位都加班的话,是不是可以要其他同事来代替以下工作,自己去机场,哪怕就是代替你离开的那一会儿。(2)如果连这一点都做不到的话,那只好忠义不能两全了,打电话给朋友解释一下,相信他会理解,毕竟工作做完了就完了,朋友还是可以再见面的。

    延伸问题2:如何安排自己的时间?会不会排斥加班?
    回答提示:基本上,如果上班工作有效率,工作量合理的话,应该不太需要加班。可是我也知道有时候很难避免加班,加上现在工作都采用责任制,所以我会调配自己的时间,全力配合。
    分析:虽然不会有人心甘情愿的加班,但依旧要表现出高配合度的诚意

    4. 讲述一些上一份工作的情况

    (面试官目的:求证求职者工作经历的真实性和了解求职者对于工作的掌握程度。)

    NO:讲和技术开发无关的工作经历。没有重点,毫无条理的讲述。

    YES:提前准备、逻辑叙述。

    第一层:你上家公司做什么业务?地址在哪?有多少人?有哪些部门?上班时间是怎样的?

    第二层:你们的工作流程是什么样的?跟什么部门沟通,怎么合作?需求文档会不会写、上线流程、测试流程,运维会不会做?

    第三层:工作过程遇到什么困难,怎么解决的?最有成就感的事情?工作中的技术细节。

    第四层:离职原因

    第五层:你为什么选择开发,你的职业规划是什么样的?你喜欢什么的工作环境,氛围

    第六层:上家公司的薪资是多少钱,你期望的薪资是多少钱?

    第七层:来北京多长时间?面几家公司了?有没有企业给你发offer?

    • 核心准备:哪些部门?

      技术部:产品需求组、软件开发组、美工组、测试组、运维组(数据、后台)

    • 需求文档?附件1

    • 上线流程?附件2

    • 测试流程?附件3

    • 工作中遇到的困难?

      回答提示:不要讲简单的技术问题,也不要说与人沟通交流方面的问题。可以讲具体的例子,并且这些困难已经解决,自己得到了什么样的成长。

    • 为什么选择开发、怎么看待开发

      回答提示:企业对这个问题很感兴趣,只有有备而来的求职者能够过关。求职者可以直接在网上查找对你所申请的行业发展的信息,只有深入了解才能产生独特的见解。企业认为最聪明的求职者是对所面试的公司和所选择的行业有预先了解,包括开发优势,行业发展趋势,自己的规划,企业欢迎进入企业的人是“知己”,而不是“盲人”。(建议:找2-3篇相关的论文,仔细阅读)

    • 离职原因?

      1. 不能讲上一家公司的坏话,就算在前一个工作受到再大的委屈,对公司有多少的怨言,都千万不要表现出来,尤其要避免对公司本身主管的批评,避免面试官的负面情绪及印象。
      2. 遇到瓶颈了,要找更大的平台,企业不喜欢自满的员工。
      3. 不能掺杂主观的负面感受,如“太辛苦”、“人际关系复杂”、“管理太混乱”、“公司不重视人才”、“公司排斥我们某某的员工”“薪资太低”等
      4. 避免把“离职原因”说得太详细、太具体。

    YES:

    • 情况一:外地公司,北京求职。上一家公司得到了很大的提升,技术方面通过项目的历炼完全可以独立开发并适应北京的开发需求;有亲戚在北京,打算来北京长期发展;北京的机会多平台大。
    • 情况二:北京公司,外地求职。在北京已经得到了技术方面的历练,家在这里,父母希望我回家发展,我也想在家这边稳定发展。
    • 情况三:北京公司,北京求职。合同到期;之前那家亲戚推荐的,现在想自己出来发展;公司内部调整等
    • 情况四:外地公司,外地求职。前段时间,家中有事,没法请假。

    4. 职业规划?

    NO:1、不知道

    2、笼统的说:想在技术方面有所作为

    3、没有想法的说:希望能按照公司的管理思路发展”。
    YES:1-3年提高技术,从初、中级的开发工程师往高级开发工程师转变。

    再用1-2年时间从高级开发工程师往架构师或技术经理转变

    之后争取能往技术总监等管理岗位转变。

    5. 期望薪资

    NO:1.不要谈区间工资,只说一个宽泛的范围,例如6K-8K.

    2.不要踢皮球,含糊不清,绕弯子,如我希望公司能根据我的情况和市场标准的水平,给我合理的薪水。

    3.姿态不要过低,如我注重的是找对工作机会,只要条件公平,我则不会计较太多。

    YES:1.给对方一个具体的数值,跟你内心期望的薪资做适度匹配。

    2.给对方台阶,同事也给自己谈判的空间。如可以说这个是我期望的薪资,当然,如果其他方面的待遇还不错的话,也是可以商量的。

    3.如果薪资没法达到理想工资的话,可以转谈其他方面的福利待遇,如:项目奖、饭补、交通补等,争取最大的利益后先应Offer。

    6. 除了本公司外,还应聘了哪些公司?

    回答提示:很奇怪,这是相当多公司会问的问题,其用意是要概略知道应徵者的求职志向,所以这并非绝对是负面答案,就算不便说出公司名称,也应回答“开发科技类的公司”,如果应聘的其他公司是不同业界,容易让人产生无法信任的感觉。

    7. 你还有什么问题要问吗?

    (面试官目的:企业的这个问题看上去可有可无,其实很关键,企业可以看出你是否真的想去他们公司)

    NO:1.企业不喜欢说“没问题”的人,因为其很注重员工的个性和创新能力。

    2.企业不喜欢求职者问个人福利之类的问题,

    3.不要问别人无法回答的问题。避免冷场。

    4.不要问人事有没有技术方面的培训,以免对方质疑你的技术能力。

    YES:1.面对人事:可以问公司的晋升机制是什么样的?企业文化如何?其他福利等等。

    2.面对技术:可以问在面试过程中的某个技术点,或者该公司具体的某个项目。

    3.面对总监及以上:可以问其开发团队情况,对开发行业的看法等等。

    8. 你对我们公司了解多少?(你为什么想来我们公司?)

    (面试官目的:通过这个问题,判断你是否真正想去他们公司,同是看你做事的准备能力)NO:1、没有了解,你们约面试我就来了,这样回答直接会被唰下来。

    2、讲的理由和面试公司情况截然相反。

    YES:于这个问题,你要格外小心,如果你已经对该单位作了研究,你可以回答一些详细的原因,像“公司本身的高技术开发环境很吸引我。”、“我同公司出生在同样的时代,我希望能够进入一家与我共同成长的公司。”、“你们公司一直都稳定发展,在近几年来在市场上很有竞争力。”、“我认为贵公司能够给我提供一个与众不同的发展道路。”这都显示出你已经做了一些调查,也说明你对自己的未来有了较为具体的远景规划。

    延伸问题:你能为我们公司带来什么呢?(我们为什么要从众多面试者中录用你?)
    回答提示:①试着告诉他们你可以减低他们的费用——“我已经有1年多的开发经验,可以直接上手做项目,直接可以给公司带来效益”。② 企业很想知道未来的员工能为企业做什么,求职者应再次重复自己的优势,然后说:“就我的能力,我可以做一个优秀的员工在组织中发挥能力,能给团队带来更大的利益”。企业喜欢求职者就申请的职位表明自己的能力,可以说:“我有大量开发方面的朋”“能洞察最新的开发技术并迅速的掌握它”等等。

    9. 陷阱类问题:假设某种负面的情景,询问你的看法。

    (面试官目的:通过反面的假设,设立陷阱,考察面试者是否会直接跳进陷阱)

    NO:直接回答面试官,把自己归结成了负面一类。

    YES:先把自己摘清楚后,有条理的展示自己的观点和提成合理建议。

    1. 工作中你难以和同事、上司相处,你该怎么办?
      回答提示:告诉面试官自己是一个性格很随和的人,跟各种性格的人相处和沟通都没有问题。如果我的同事或者朋友遇到这样的问题我会建议他这么做:

    ①会服从领导的指挥,配合同事的工作。②会从自身找原因,仔细分析是不是自己工作做得不好让领导不满意,同事看不惯。还要看看是不是为人处世方面做得不好,如果是这样的话会努力改正。③如果找不到原因,会找机会跟他们沟通,请他们指出我的不足,有问题就及时改正。④作为优秀的员工,应该时刻以大局为重,即使在一段时间内,领导和同事对我不理解,也会做好本职工作,虚心向他们学习,我相信,他们会看见我在努力,总有一天会对我微笑的。

    2.假设你在某单位工作,成绩比较突出,得到领导的肯定。但同时你发现同事们越来越孤立你,你怎么看这个问题?你准备怎么办?
    回答提示:告诉面试官你之前没有遇到同事越来越孤立自己的情况,如果我的同事或朋友遇到这种情况,我会简历他这么做。

    ①成绩比较突出,得到领导的肯定是件好事情,以后更加努力。②检讨一下自己是不是对工作的热心度超过同事间交往的热心了,加强同事间的交往及共同的兴趣爱好。③工作中,切勿伤害别人的自尊心④不再领导前拨弄是非。
    3、你和别人发生过争执吗?你是怎样解决的?
    回答提示:(这是面试中最险恶的问题,其实是考官布下的一个陷阱,千万不要说任何人的过错,应知成功解决矛盾是一个协作团体中成员所必备的能力。考官希望看到你是成熟且乐于奉献的。他们通过这个问题了解你的成熟度和处世能力。在没有外界干涉的情况下,通过妥协的方式来解决才是正确答案)

    告诉面试官自己是一个比较随和的人,跟各种性格的人相处都没有问题,但是工作中因为工作有些意见的分歧,出现争执,我会这样做。

    自己先冷静下来,捋清思路,找出争执原因;找出解决争执源头,共同提出解决方案。
    4、假如工作一段时间后,你发现你根本不适合这个职位,你会怎么办?

    回答提示:告诉面试官自己已经经过了一年多的工作经历,已经非常确定走开发这个职位,并且自己特别喜欢,不会出现工作过一段时间后发现不适合的情况,如果我的朋友或同事遇到这样的问题,我会建议他这样做:

    一段时间发现工作不适合,有两种情况:①如果你确实热爱这个职业,那你就要不断学习,虚心向领导和同事学习业务知识和处事经验,了解这个职业的精神内涵和职业要求,力争减少差距;②你觉得这个职业可有可无,那还是趁早换个职业,去发现适合你的,你热爱的职业,那样你的发展前途也会大点,对单位和个人都有好处。
    5、你通常如何处理別人的批评?
    回答提示:①沈默是金,不必说什么,否则情况更糟,不过我会接受建设性的批评。②我会等大家冷靜下来再讨论。

    10. 项目经验类

    (面试官目的:通过问此类问题,了解面试者是否实际参与过项目和工作能力如何)

    NO:1、对于项目完全不熟悉,照搬别人项目

    2、不清楚别人问问题的方向,答非所问。

    YES:1、每个简历中的项目需要熟练掌握并事先进行语言梳理练习。

    2、对于成就感、困难、挫折等事件,要涉及在具体做项目的过程中来,不能讲无关紧要的生活琐事。

    1、项目开发周期多长,代码量多少?什么时间上线?

    2、项目难点在哪?技术亮点在哪?商业价值在哪?

    3、喜欢这份工作的哪一点?
    回答提示:(相信其实大家心中一定都有答案了吧!每个人的价值观不同,自然评断的标准也会不同,但是,在回答面试官这个问题时可不能太直接就把自己心理的话说出来,尤其是薪资方面的问题,如果这时自己能仔细思考出这份工作的与众不同之处,相信在面试上会大大加分。)

    可以告诉面试官你喜欢开发出来的项目后带来的成就感;也可以告诉面试官你喜欢代码转化成APP后的成就感。

    4、谈谈你过去的工作经验中,最令你挫折的事情?
    回答提示:曾经接触过一个客户,原本就有耳闻他们以挑剔出名,所以事前的准备功夫做得十分充分,也投入了相当多的时间与精力,最后客户虽然并没有照单全收,但是接受的程度已经出乎我们意料之外了。原以为从此可以合作愉快,却得知客户最后因为预算关系选择了另一家代理商,之前的努力因而付诸流水。尽管如此,我还是从这次的经验学到很多,如对该产业的了解,整个team的默契也更好了。
    分析:借此了解你对挫折的容忍度及调解方式。

    5、谈谈过去的工作经验中,最令你有成就感的事情?(你做过的哪件事最令自己感到骄傲?)
    回答提示:(这是考官给你的一个机会,让你展示自己把握命运的能力。这会体现你潜在的领导能力以及你被提升的可能性。)

    这类问题不要回答生活上的一些琐事,一定要告诉企业与工作息息相关的事迹,作为开发人员,最重要的是项目方面的成就,面试者可以说看到用户使用自己开发出的APP后有好评很有成绩感。

    11. 工作中常遇问题(面试问的少,但在工作中会遇到的人际交往和工作处事等)

    1、在完成某项工作时,你认为领导要求的方式不是最好的,自己还有更好的方法,你应该怎么做?
    回答提示:①.原则上我会尊重和服从领导的工作安排,同时私底下找机会以请教的口吻,婉转地表达自己的想法,看看领导是否能改变想法。②如果领导没有采纳我的建议,我也同样会按领导的要求认真地去完成这项工作。③.还有一种情况,假如领导要求的方式违背原则,我会坚决提出反对意见,如领导仍固执己见,我会毫不犹豫地再向上级领导反映。
    2、如果你的工作出现失误,给本公司造成经济损失,你认为该怎么办?

    (同学在入职时不能签署责任协议,工作中要学会用邮件沟通,保留证据)
    回答提示:①我本意是为公司努力工作,如果造成经济损失,我认为首要的问题是想方设法去弥补或挽回经济损失。如果我无能力负责,希望单位帮助解决。②分清责任,各负其责,如果是我的责任,我甘愿受罚;如果是一个我负责的团队中别人的失误,也不能幸灾乐祸,作为一个团队,需要互相提携共同完成工作,安慰同事并且帮助同事查找原因总结经验。③总结经验教训,一个人的一生不可能不犯错误,重要的是能从自己的或者是别人的错误中吸取经验教训,并在今后的工作中避免发生同类的错误。检讨自己的工作方法、分析问题的深度和力度是否不够,以致出现了本可以避免的错误。
    3、如果你做的一项工作受到上级领导的表扬,但你主管领导却说是他做的,你该怎样?
    回答提示:我首先不会找那位上级领导说明这件事,我会主动找我的主管领导来沟通,因为沟通是解决人际关系的最好办法,但结果会有两种:①我的主管领导认识到自己的错误,我想我会视具体情况决定是否原谅他。②他更加变本加厉的来威胁我,那我会毫不犹豫地找我的上级领导反映此事,因为他这样做会造成负面影响,对今后的工作不利。

    4、新到一个部门,一天一个客户来找你解决问题,你努力想让他满意,可是始终达不到群众得满意,他投诉你们部门工作效率低,你这个时候怎么作?
    回答提示:(1)首先,我会保持冷静。作为一名工作人员,在工作中遇到各种各样的问题是正常的,关键是如何认识它,积极应对,妥善处理。 (2)其次,我会反思一下客户不满意的原因。一是看是否是自己在解决问题上的确有考虑的不周到的地方,二是看是否是客户不太了解相关的服务规定而提出超出规定的要求,三是看是否是客户了解相关的规定,但是提出的要求不合理。 (3)再次,根据原因采取相对的对策。如果是自己确有不周到的地方,按照服务规定作出合理的安排,并向客户作出解释;如果是客户不太了解政策规定而造成的误解,我会向他作出进一步的解释,消除他的误会;如果是客户提出的要求不符合政策规定,我会明确地向他指出。 (4)再次,我会把整个事情的处理情况向领导作出说明,希望得到他的理解和支持。(5)我不会因为客户投诉了我而丧失工作的热情和积极性,而会一如既往地牢记为客户服务的宗旨,争取早日做一名领导信任、公司放心、客户满意的职员。

    5、在完成某项工作时,你认为领导要求的方式不是最好的,自己还有更好的方法,你应该怎么做?
    回答提示:①.原则上我会尊重和服从领导的工作安排;同时私底下找机会以请教的口吻,婉转地表达自己的想法,看看领导是否能改变想法。②如果领导没有采纳我的建议,我也同样会按领导的要求认真地去完成这项工作。③.还有一种情况,假如领导要求的方式违背原则,我会坚决提出反对意见,如领导仍固执己见,我会毫不犹豫地再向上级领导反映。

    12. 对即将入职的期待和准备等问题

    (面试官目的:根据面试者的表现,判断面试者是否具备沟通、协调、规划等工作能力)

    1、请说出你选择这份工作的动机?
    回答提示:这是想知道面试者对这份工作的热忱及理解度,并排除因一时兴起而来应试的人。告诉企业你的热忱之外,要告诉别人你选择这个行业的目的和你对于行业的看法。

    2、你最擅长的技术方向是什么?

    回答提示:说和你要应聘的职位相关的课程,表现一下自己的热诚没有什么坏处。建议回答上课期间老师讲的最重要的内容,方向可以放大一些,不要拘泥于某个技术的细节。
    3、你怎么理解你应聘的职位?
    回答提示:把岗位职责和任务及工作态度阐述一下。

    (建议在网上找N家企业的应聘需求和工作职责后整理出来4-5点具体的观点)
    4、对工作的期望与目标何在?
    回答提示:这是面试者用来评断求职者是否对自己有一定程度的期望、对这份工作是否了解的问题。对于工作有确实学习目标的人通常学习较快,对于新工作自然较容易进入状况,这时建议你,最好针对工作的性质找出一个确实的答案,如开发人员可以这样回答:“我的目标是能成为高级的软件开发人员,给公司做更多有价值的APP,甚至能带领公司的开发团队,一起和团队成长,发挥出团队的最大价值;为了达到这个目标,我一定会努力学习新的技术,而我相信以我认真负责的态度,一定可以达到这个目标。”

    5、就你申请的这个职位,你认为你还欠缺什么?
    回答提示:企业喜欢问求职者弱点,但精明的求职者一般不直接回答。他们希望看到这样的求职者:继续重复自己的优势,然后说:“对于这个职位和我的能力来说,我相信自己是可以胜任的,只是缺乏经验,这个问题我想我可以进入公司以后以最短的时间来解决,我的学习能力很强,我相信可以很快融入公司的企业文化,进入工作状态。”企业喜欢能够巧妙地躲过难题的求职者。
    6、这个职务的期许?
    回答提示:希望能借此发挥我的之前工作积累的经验和大学所学专长,同时也吸收贵公司在这方面的经验,就公司、我个人而言,缔造“双赢”的局面。
    分析:回答前不妨先询问该公司对这项职务的责任认定及归属,因为每一家公司的状况不尽相同,以免说了一堆理想抱负却发现牛头不对马嘴。

    7、如果我录用你,你将怎样开展工作?

    回答提示: ①如果应聘者对于应聘的职位缺乏足够的了解,最好不要直接说出自己开展工作的具体办法。②可以尝试采用迂回战术来回答,如“首先听取领导的指示和要求,然后就有关情况进行了解和熟悉,接下来制定一份近期的工作计划并报领导批准,最后根据计划开展工作。”。
    分析:这个问题的主要目的也是了解应聘者的工作能力和计划性、条理性,而且重点想要知道细节。如果向思路中所讲的迂回战术,面试官会认为回避问题,如果引导了几次仍然是回避的话,此人绝对不会录用了。
    8、你希望与什么样的上级共事?
    回答提示:告诉面试官你的适应能力比较强,沟通能力也不错,如果是各种不同工作方式的领导选择的话,我希望是这样的:

    ①通过应聘者对上级的“希望”可以判断出应聘者对自我要求的意识,这既是一个陷阱,又是一次机会。②最好回避对上级具体的希望,多谈对自己的要求。③如“做为刚步入社会的新人,我应该多要求自己尽快熟悉环境、适应环境,而不应该对环境提出什么要求,只要能发挥我的专长就可以了。
    分析:这个问题比较好的回答是,希望我的上级能够在工作中对我多指导,对我工作中的错误能够立即指出。总之,从上级指导这个方面谈,不会有大的纰漏。
    9、为了做好你工作份外之事,你该怎样获得他人的支持和帮助?
    回答提示:平时和同事处理好关系,在能帮助别人的时候不予余力去帮同事,在自己需要帮助的时候,别人也能帮自己。 突发情况需要他人帮助时会选好时间,在别人空闲的时候求助并简明扼要的讲清楚需求争取别人的支持和帮助。

    10、谈谈如何适应办公室工作的新环境?
    回答提示:①办公室里每个人有各自的岗位与职责,不得擅离岗位。②根据领导指示和工作安排,制定工作计划,提前预备,并按计划完成。③多请示并及时汇报,遇到不明白的要虚心请教。④抓间隙时间,多学习,努力提高自己的政治素质和业务水平。

    13. 个人隐私类问题。(此类问题对于面试者很不愿意回答,但是作为面试官,要在短时间内判定是否给你Offer,除了技术考核之外,对于人品的考核也很关键,他要通过这些问题来判断你的人品等)

    1、你的业余爱好是什么?
    回答提示:找一些富于团体合作精神的,这里有一个真实的故事:有人被否决掉,因为他的爱好是深海潜水。主考官说:因为这是一项单人活动,我不敢肯定他能否适应团体工作。
    2、说你的家庭?
    回答提示:企业面试时询问家庭问题不是非要知道求职者家庭的情况,探究隐私,企业不喜欢探究个人隐私,而是要了解家庭背景对求职者的塑造和影响。企业希望听到的重点也在于家庭对求职者的积极影响。企业最喜欢听到的是:我很爱我的家庭,我的家庭一向很和睦,虽然我的父亲和母亲都是普通人,但是从小,我就看到我父亲起早贪黑,每天工作特别勤劳,他的行动无形中培养了我认真负责的态度和勤劳的精神。我母亲为人善良,对人热情,特别乐于助人,所以在单位人缘很好,她的一言一行也一直在教导我做人的道理。企业相信,和睦的家庭关系对一个人的成长有潜移默化的影响。
    3、眼下你生活中最重要的是什么?

    回答提示:对我来说,最重要的是工作能安定下来,给生活无忧保障,然后再不段的学习新的技术。

    4、你有男朋友/女朋友吗?

    回答提示:可以说有或者没有,但是一定要注意有的话,不能说在外地。)。

    14. 你工作经验欠缺,如何能胜任这项工作?

    (这类问题,一般会出现在在读生或者应届毕业生的面试过程中,面试官的目的:不一定是真正在乎经验,而是看面试者的回答态度和压低面试者的薪资)
    回答提示:

    ①对这个问题的回答最好要体现出应聘者的诚恳、机智、果敢及敬业。②如“作为应届毕业生,比那些在行业内做了三四年的大牛来说,在工作经验方面我的确会有所欠缺,因此在大学期间我一直利用各种机会在这个行业做实习工作了。现在我也有1年左右的开发经验,独立做项目完全没有问题。③我在工作中业发现,实际工作远比书本知识丰富、复杂。我觉得有较强的责任心、适应能力和学习能力,勤奋和努力比暂时的经验更重要,请贵公司放心,我学校的所有事情已经处理好了,已经拿到了毕业证书,工作能力方面和一两年经验的开发者没有区别,而且能稳定长期在公司发展。”点评:突出自己的吃苦能力和适应性以及学习能力(不是学习成绩)为好。
    十三、果你在这次面试中没有被录用,你怎么打算?
    回答提示:现在的社会是一个竞争的社会,从这次面试中也可看出这一点,有竞争就必然有优劣,有成功必定就会有失败。往往成功的背后有许多的困难和挫折,如果这次失败了也仅仅是一次而已,只有经过经验经历的积累才能塑造出一个完全的成功者。我会从以下几个方面来正确看待这次失败:①要敢于面对,面对这次失败不气馁,接受已经失去了这次机会就不会回头这个现实,从心理意志和精神上体现出对这次失败的抵抗力。要有自信,相信自己经历了这次之后经过努力一定能行,能够超越自我。②善于反思,对于这次面试经验要认真总结,思考剖析,能够从自身的角度找差距。正确对待自己,实事求是地评价自己,辩证的看待自己的长短得失,做一个明白人。③走出阴影,要克服这一次失败带给自己的心理压力,时刻牢记自己弱点,防患于未然,加强学习,提高自身素质。④认真工作,回到原单位岗位上后,要实实在在、踏踏实实地工作,三十六行、行行出状元,争取在本岗位上做出一定的成绩。⑤再接再厉,成为开发工程师一直是我的梦想,以后如果有机会我仍然后再次参加竞争。

    15. 认为你在学校属于好学生吗?

    回答提示:企业的招聘者很精明,问这个问题可以试探出很多问题:如果求职者学习成绩好,就会说:“是的,我的成绩很好,所有的成绩都很优异。当然,判断一个学生是不是好学生有很多标准,在学校期间我认为成绩是重要的,其他方面包括思想道德、实践经验、团队精神、沟通能力也都是很重要的,我在这些方面也做得很好,应该说我是一个全面发展的学生。”如果求职者成绩不尽理想,便会说:“我认为是不是一个好学生的标准是多元化的,我的学习成绩还可以,在其他方面我的表现也很突出,比如我在xx公司做过开发的实习,我很喜欢在快节奏和压力下工作,我在学生会组织过 ××活动,锻炼了我的团队合作精神和组织能力。” 有经验的招聘者一听就会明白,企业喜欢诚实的求职者。

    16. 作为被面试者给我打一下分?

    回答提示:试着列出四个优点和一个非常非常非常小的缺点(可以抱怨一下设施,没有明确责任人的缺点是不会有人介意的

    17. 想过创业吗?

    回答提示:这个问题可以显示你的冲劲,但如果你的回答是“有”的话,千万小心,下一个问题可能就是:那么为什么你不这样做呢?建议尽量不要说近一两年要创业,公司会觉得你来只是做个跳板,之后可能随时走人。
    十七、何时可以到职?
    回答提示:大多数企业会关心就职时间,最好是回答“如果被录用的话,到职日可按公司规定上班”,但如果还想再面几家的话,可以推迟4-5天左右入职,应进一步说明原因,录取公司应该会通融的。

    18. 学历问题

    1、你并非毕业于名牌院校?
    回答提示:是否毕业于名牌院校不重要,重要的是有能力完成您交给我的工作,我已经通过一年的工作,掌握的技能完全可以胜任贵公司现在工作,而且我比一些名牌院校的应届毕业生的动手能力还要强,我想我更适合贵公司这个职位。
    2、怎样看待学历和能力?
    回答提示:学历我想只要是大学专科的学历,就表明觉得我具备了根本的学习能力。剩下的,你是学士也好,还是博士也好,对于这一点的讨论,不是看你学了多少知识,而是看你在这个领域上发挥了什么,也就是所说的能力问题。一个人工作能力的高低直接决定其职场命运,而学历的高低只是进入一个企业的敲门砖,如果贵公司把学历卡在博士上,我就无法进入贵公司,当然这不一定只是我个人的损失,如果一个专科生都能完成的工作,您又何必非要招聘一位博士生呢

    相关文章

      网友评论

        本文标题:面试题(四)

        本文链接:https://www.haomeiwen.com/subject/czrwottx.html