1.指针悬挂问题 $array = [1, 2, 3]; echo implode(',', $array), "\n"; foreach ($array as &$value) {}    // by reference echo implode(',', $array), "\n"; foreach ($array as $value) {}     // by value (i.e., copy) echo implode(',', $array), …
一.前方有坑 php属于弱类型语言,不会强迫工程师在使用变量之前先声明变量类型,开发时爽了,但是也带来不少的坑.下面就举一个坑的例子: 例1: $str = ‘haodaquan'; echo ($str == 0) ? 1 : 0; 运行结果是: 1 这个坑,在好多公司的笔试题里出现,当然没有这么直接的考,会隐晦一些,比如下面的题目:例2 $arr = [1,'aa'=>[2,2]]; foreach ($arr as $key => $value) { if ($key=='aa') {…
来自B站官方的消息显示,B站在近期也将推出"基友号"功能,功能的内容是通话免费,考虑到这类互联网套餐都是中国联通在运营,因此在内容上可能也会效仿腾讯大王卡实现免费通话. 目前,B站卡分为22/33以及小电视卡三类,而22卡的最低起跳月租就是22元,因此该"基友号"功能可能会向所有B站用户开放. 网友:然而我认识的人没有一个用b卡的. 日前腾讯大王卡正式上线了"亲情号"功能,只要双方用户均为王卡,大王/天王卡用户都可以实现单向通话免费,最主要的是该…
原文:http://blog.csdn.net/jinzhencs/article/details/51461776 场景:在我们工作中,有时需要生成一些文件,可能它不是一种标准的格式,比如JSON. 目的:配置一个模板,根据前端传入的值动态生成配置文件,并且支持循环判断 项目路径:  请无视YamlTest.Java和YamlTemplate.ftl JAVA代码: package com.ming.freemark.demo; import java.io.File; import java…
最近有一些朋友问我一些mysql相关的面试题,有一些比较基础,有些比较偏.这里就总结一些常见的mysql面试题吧,都是自己平时工作的总结以及经验.大家看完,能避开很多坑.而且很多问题,都是面试中也经常问到!希望能对大家的面试有一些帮助!!! 比如,下面这些问题: 1.为什么一定要设一个主键? 2.你们主键是用自增还是UUID? 3.自增主机用完了怎么办? 4.主键为什么不推荐有业务含义? 5.货币字段用什么类型?? 6.时间字段用什么类型? 7.为什么不直接存储图片.音频.视频等大容量内容? 8…
1.  考察this var length = 10 function fn(){ alert(this.length) } var obj = { length: 5, method: function(fn) { fn() // ? arguments[0]() // ? } } obj.method(fn) 这里的坑主要是arguments,我们知道取对象属于除了点操作符还可以用中括号,这里fn的scope是arguments,即fn内的this===arguments,调用时仅传了一个参…
以下是我根据个人爱好收集网罗的一些个觉得还可以的面试题,觉得很有意思,给小伙伴们分享一下! ======后续还会继续追加试题.................... 第一道题: 下面弹出a的结果是多少? ; setTimeout(function () { alert(a); a = ; }, ); a = ; 第二道题: 下面 执行的值是什么 var name = '叶小钗'; function func() { var id = '刀狂剑痴'; function alertId() { al…
第二题 代码如下: $i='11'; printf("%d\n",printf("%d",printf("%d",$i))); 输出结果是多少?如果你回答是11,或者111111就掉入陷阱了.先了解printf这个函数,printf不仅是打印函数,它还有返回值.重点就在这 代码如下: var_dump(printf("%d",$i)); 你猜猜上面的结果是啥?先是printf打印变量本身11,然后printf会返回一个变量字符…
很多人都会答错的一道关于String的题目,究竟有什么难度? 我们一起来看一道关于String的面试题,准确说是改编的面试题! 准备好啦?在放大招之前先来一个小招式 String s1 = new String("hello"); String s2 = new String("hello"); 来,问大家,在这一小段代码中一共创建了几个对象呢? 其实这道题并不难,考察的是关于String的重点知识点常量池和字符串优化. 这个是经典题了,答案是3个,因为这里的“he…
一.选择题(共80题,每题1分) 1. 不会立马使引用计数器改变的是: 答案:(C)  A.release  B.alloc  C.autorelease  D.retain 2. 在OC中类的接口声明keyword为: 答案:(B)  A.@import  B.@interface  C.@implemention  D.@protocol 3. NSString *name = [[NSString alloc]initWithString:@"张三"];NSLog(@"…
1.首先下面代码输出什么? for (var i = 0; i < 5; i++) { console.log(i); } 输出:0 1 2 3 4 2.上面只是普通的输出,没有陷阱再看下面这个题(套路开始了) for (var i = 0; i < 5; i++) { setTimeout(function() { console.log(i); }, 1000 * i); } 输出:5 5 5 5 5 setTimeout 会延迟执行,那么执行到 console.log 的时候,其实 i…
替换字符串"abcdefgh" 中的"abc"为"ddc" local str ="abcdefgh"; b = string.gsub(str, "%abc", "ddc"); str = b; print(str); https://my.oschina.net/workhelu/blog/363949 pairs 1.pairs遍历table中的所有的key-vale 而ipair…
### Vue 双向绑定原理 mvvm 双向绑定,采用**数据劫持结合发布者-订阅者模式**的方式,通过 `Object.defineProperty()` 来劫持各个属性的 setter.getter,在数据变动时发布消息给订阅者,触发相应的监听回调. ![双向绑定原理](?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240) **几个要点:** 1.实现一个数据监听器 Observer,能够对数据对象的所有属性进行监听,如有变动可拿到最新值并…
为什么换工作 换工作简单来讲一般会归纳为钱不够或者人不对,我们团队氛围很不错,所以基本就定位到钱不够了,而我更多是考虑到以后的职业发展,简单说来就是对以后几年的工作有想法,而这种想法实现不一定能在现在的团队获得,在短期内也看不到希望,加之公司职级晋升不合理等考虑,也就自然而然想到了离职. 其实在鞋厂这两年,真的收获了很多东西,也负责了很重要的业务,这些财富可能是其它大公司不一定能给予的,虽然一直级别低点也就没太多在意,直到最近职级福利缩水...... 最初我面试的职级为X,HR给了一套智力题做,…
引言 闭包是什么?以前看面试题的时候才发现这个名词. 闭包在实际项目中会有什么问题?现在就让我们一起来看下这个不太熟悉的名词. 如果在实际工作中用到了匿名函数和lamada表达式,那你就应该高度注意啦.   问题 请问下大家这段代码的输出结果是什么样的呢? public static void Main() { Console.WriteLine("Starting."); ; i < ; ++i) Task.Run(() => Console.WriteLine(i));…
据说是一不注意就会做错的五道javascript面试题之一,我们来看看这道题长什么样 function Container( properties ) { var objthis = this; for ( var i in properties ) { (function(){ var t = properties[i]; objthis[ "get" + i ] = function() {return t;}; objthis[ "set" + i ] = f…
最近看一些面试题,很多都提到了数组去重,用的最多的不外乎就是下面这个例子 arr.filter(function(value,index,arr){ return arr.indexOf(value,index+1) === -1}) 如果忽略其他因素,只从代码简洁度和易读性来说,这个代码确实是很好的,也确实体现了对js的掌握程度. 但是,从其他方面来说,这个代码是否就真的是很好的呢?作为一个曾经的半吊子acmer,效率恐怕是我最在意的东西了.那我们就来看下效率吧. 以下所有实验均基于nodej…
前言 年前刚刚离职了,分享下我曾经出过的一道面试题,此题是我出的一套前端面试题中的最后一题,用来考核面试者的JavaScript的综合能力,很可惜到目前为止的将近两年中,几乎没有人能够完全答对,并非多难只是因为大多面试者过于轻视他. 题目如下: function Foo() { getName = function () { alert (1); }; return this; } Foo.getName = function () { alert (2);}; Foo.prototype.ge…
Java线程面试题 Top 50 不管你是新程序员还是老手,你一定在面试中遇到过有关线程的问题.Java语言一个重要的特点就是内置了对并发的支持,让Java大受企业和程序员 的欢迎.大多数待遇丰厚的Java开发职位都要求开发者精通多线程技术并且有丰富的Java程序开发.调试.优化经验,所以线程相关的问题在面试中经常会 被提到. 在典型的Java面试中, 面试官会从线程的基本概念问起, 如:为什么你需要使用线程, 如何创建线程,用什么方式创建线程比较好(比如:继承thread类还是调用Runnab…
由工作中演变而来的面试题 这是一个我工作当中的遇到的一个问题,似乎很有趣,就当做了一道题去面试,发现几乎没人能全部答对并说出原因,遂拿出来聊一聊吧. 先看题目代码: function fun(n,o) { console.log(o) return { fun:function(m){ return fun(m,n); } }; } var a = fun(0); a.fun(1); a.fun(2); a.fun(3);//undefined,?,?,? var b = fun(0).fun(…
工作时间长了总是用同样的一些东西  其他的有些生疏  闲来看看面试题练习一下:  题目出处嘛...aspnet-tests-for-juniors 转载请注明来源:http://www.cnblogs.com/zaiyuzhong/p/answer-for-aspnet-test.html 1. 定义接口IQuestion: interface IQuestion { string Title{get;set;} QuestionType Type{get;} string GetAnswer(…
2014 WAP初试题----实现一个不可变的队列: 看似很简单..实则,不同的版本效率的差距可能是巨大的..甚至难以想象.. 之前用STL库的queue进行了对比,差别非常大.. 用上一篇文章的immutable stack 来实现 immutable queue. 其实就是用两个栈实现队列,具体的思想可以参考 编程之美.. 注意:代码中析构函数那一段代码的目的主要是为了避免析构函数递归调用时递归深度太大.. 通过将链表后序的节点的智能指针复制到局部的vector中,通过vector的析构函数…
一道常被人轻视的前端JS面试题 标签(空格分隔): JavaScript function Foo() { getName = function () { alert (1); }; return this; } Foo.getName = function () { alert (2); }; Foo.prototype.getName = function () { alert (3); }; var getName = function () { alert (4); }; functio…
以下是本人在iOS开发工作中使用的一些小技巧,记录一下. 1.使用XXX.pch文件便捷开发+加速Build 在IOS开发的项目中有一个XX_Prefix.pch XX_Prefix.pch:扩展名.pch表示"precompiled header",这是一个你工程要用到的来自于外部框架的头文件列表.xcode将编译这些头到文件,这将减少你在选择Build 或Build and Go时编译项目的时间.通常用到的头文件已经自动包含了pch,系统编译每个.m文件前,都会先imort这个文件…
前言 今天本来准备先了解下node.js的,但是,看看我们一个小时前与一个小时后的差距: 既然如此,我们继续来搜集我们的前端面试题大业吧!!! 特别感谢玉面小肥鱼提供哟,@玉面小飞鱼 题目一览 JavaScript编程题1.实现输出document对象中所有成员的名称和类型:2.如何获得一个DOM元素的绝对位置?(获得元素位置,不依赖框架)3.如何利用JS生成一个table?4.实现预加载一张图片,加载完成后显示在网页中并设定其高度为50px,宽度为50px:5.假设有一个4行td的table,…
转载自:http://www.cnblogs.com/dolphin0520/p/3958019.html 原文链接:http://www.importnew.com/12773.html   本文由 ImportNew - 李 广 翻译自 javarevisited.欢迎加入Java小组.转载请参见文章末尾的要求. 不管你是新程序员还是老手,你一定在面试中遇到过有关线程的问题.Java语言一个重要的特点就是内置了对并发的支持,让Java大受企业和程序员的欢迎.大多数待遇丰厚的Java开发职位都…
转自:http://blog.csdn.net/hackbuteer1/article/details/7959921#t4 百度一面 1.给定一个字符串比如“abcdef”,要求写个函数编程“defabc”,位数是可变的.这个比较简单,我用的是strcpy和memcpy,然后他问有什么优化的办法,我就不知道了. 2.socket过程就是socket的server和client整个流程写下来,这个还是没啥问题的. 3.数据结构二叉树的遍历,给了个二叉树,前序.中序.后序写出来,这个没什么难度.…
分享下我曾经出过的一道面试题,此题是我出的一套前端面试题中的最后一题,用来考核面试者的JavaScript的综合能力,很可惜到目前为止的将近两年中,几乎没有人能够完全答对,并非多难只是因为大多面试者过于轻视他. 题目如下: function Foo() { getName = function () { alert (1); }; return this; } Foo.getName = function () { alert (2);}; Foo.prototype.getName = fun…
下面是 Java 线程相关的热门面试题,你可以用它来好好准备面试. 1) 什么是线程? 线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位.程序员可以通过它进行多处理器编程,你可以使用多线程对运算密集型任务提速.比如,如果一个线程完成一个任务要 100 毫秒,那么用十个线程完成改任务只需 10 毫秒.Java 在语言层面对多线程提供了卓越的支持,它也是一个很好的卖点.欲了解更多详细信息请点击这里. 2) 线程和进程有什么区别? 线程是进程的子集,一个进程可以有很…
JS数组追加数组没有现成的函数,这么多年我已经习惯了a.push.apply(a, b);这种自以为很酷的,不需要写for循环的写法,一直也没遇到什么问题,直到今天我要append的b是个很大的数组时才遇到了坑. a = new Array(); b = new Array(125624); a.push.apply(a, b); 以上的代码在mac的chrome下抛出了如下的异常 Uncaught RangeError: Maximum call stack size exceeded 如果把…