竹笋

首页 » 问答 » 常识 » 程序员阿里京东美团面试成功回来写下的
TUhjnbcbe - 2023/8/11 21:58:00


  前言


  之前有很多朋友都去现今主流的大型互联网公司面试(阿里巴巴、京东、美团、滴滴等),面试回来之后会他们会发给我一些面试真题。本文面试真题是我总结下来的经验,希望对大家有帮助其实我本来没想写这篇文章,因为自己的记忆力不是很强,不像记忆力强的人,面试完后,几乎能把自己和面试官的谈话记下来。我当初面试完后,除了记住一些聊过的知识点以外,具体的内容基本上都忘得一干二净,所以写这篇文章还是花了一些心血的。


  Q1、第一个问题关于弱类型

正确运行的输出结果:

strpos是返回字符串str2在str1的位置,没有找到则返回false然而实际上这次返回了而在if语句中0也被当作false,所以我们需要对false做类型判断,正确的代码如下:

需要注意的是我们使用了!==,在php和JS中=!相对==更为严格需要要求数据类型一致。


  Q2


  下面的输出结果会是怎样?

实际运行结果是:

关于$x++和$x--这个问题其实非常容易遇见,我们只需记住$x++使用最近的值,然后才自增。

运算符的优先级,++是明显高于+,因此先执行++再执行+。关于运算符的优先级,有的时候我们真的可以通过括号来让我们的程序更让人直观的了解,毕竟代码不光是用于执行的,有的时候或许团队的可读性也是提高效率的一种。


  Q3


  关于变量的引用;

请问$a$b的值各位多少


  部分第一时间会想到$a=1$b=21,仔细一看$b=$a,这里$b是变量$a的引用而不是直接赋值。


  Q4


  下面是true还是false

var_dump(==);//false

,PHP会默认把当作8进制来处理,实际转化为10进制就是83,显然这不是相等的。


  

var_dump(==);//true

这里php会非常有趣的将’’转换成一个数字而且默认去掉了前面的0也就是

==


  

var_dump(===);//false

很显然上面的问题已经说过了数字和字符串类型不一致。

1
查看完整版本: 程序员阿里京东美团面试成功回来写下的