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

发布于 2022-09-06 03:19:55 字数 193 浏览 8 评论 0

在重新写一个服务的接口

原来程序是php写的

看php文档 empty() 这个是用来检测非空值的

那么在js里

if (!empty($x)){
todo...
}

是否等于js的

if(x){
todo...
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

薔薇婲 2022-09-13 03:19:55
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)

不同语言没法比, 比如:

  1. 如果变量foo($foo)不存在, PHP的empty($foo)不会报错, 返回FALSE, 而JS中!foo则会报ReferenceError`
  2. JS中有undefined类型而PHP中没有
  3. JS中有NaNPHP中没有
  4. JS中没有floatint的概念, 都是number, 统一用IEEE-754表示, 所以会有NaN, -0, Infinity等几个特殊值.

如果可以对比的话:

  1. 相同的是空字符串"", NULL/null, FALSE/false, 0(0.0)/0都会假
  2. 不同的是空数组[]在PHP中为假, JS中为真
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文