为了账号安全,请及时绑定邮箱和手机立即绑定

php中的 if (!empty($x))是否等同于 js 的 if(x) ?

php中的 if (!empty($x))是否等同于 js 的 if(x) ?

宝慕林4294392 2019-02-15 22:44:38
在重新写一个服务的接口原来程序是php写的看php文档 empty() 这个是用来检测非空值的那么在js里if (!empty($x)){todo...}是否等于js的if(x){todo...}
查看完整描述

1 回答

?
一只甜甜圈

TA贡献1836条经验 获得超5个赞

Return Values ¶


Returns FALSE if var exists and has a non-empty, non-zero value. Otherwise returns TRUE.


The following things are considered to be empty:


"" (an empty string)

0 (0 as an integer)

0.0 (0 as a float)

"0" (0 as a string)

NULL

FALSE

array() (an empty array)

$var; (a variable declared, but without a value)

不同语言没法比, 比如:


如果变量foo($foo)不存在, PHP的empty($foo)不会报错, 返回FALSE, 而JS中!foo则会报ReferenceError`

JS中有undefined类型而PHP中没有

JS中有NaNPHP中没有

JS中没有float和int的概念, 都是number, 统一用IEEE-754表示, 所以会有NaN, -0, Infinity等几个特殊值.

如果可以对比的话:


相同的是空字符串"", NULL/null, FALSE/false, 0(0.0)/0都会假

不同的是空数组[]在PHP中为假, JS中为真


查看完整回答
反对 回复 2019-02-19
  • 1 回答
  • 0 关注
  • 565 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号