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

PHP相等(=双等于)和恒等(=三倍等于)比较运算符有何不同?

PHP相等(=双等于)和恒等(=三倍等于)比较运算符有何不同?

PHP
慕田峪7331174 2019-07-16 10:28:17
PHP相等(=双等于)和恒等(=三倍等于)比较运算符有何不同?.之间的区别是什么?==和===?松散的==比较工作?严格到什么程度===比较工作?什么是有用的例子?
查看完整描述

3 回答

?
人到中年有点甜

TA贡献1895条经验 获得超7个赞

如果两种不同类型的类型不同,则操作符=在它们之间进行转换,而=运算符则执行“类型比较”。这意味着只有当两个操作数具有相同的类型和相同的值时,它才会返回true。


例子:


1 === 1: true

1 == 1: true

1 === "1": false // 1 is an integer, "1" is a string

1 == "1": true // "1" gets casted to an integer, which is 1

"foo" === "foo": true // both operands are strings and have the same value

警告:具有等效成员的同一个类的两个实例不匹配===接线员。例子:


$a = new stdClass();

$a->foo = "bar";

$b = clone $a;

var_dump($a === $b); // bool(false)


查看完整回答
反对 回复 2019-07-16
?
FFIVE

TA贡献1797条经验 获得超6个赞

关于JavaScript:

=操作符的工作方式与=操作符相同,但它要求其操作数不仅具有相同的值,而且具有相同的数据类型。

例如,下面的示例将显示‘x和y相等’,但不显示‘x和y是相同的’。

var x = 4;var y = '4';if (x == y) {
    alert('x and y are equal');}if (x === y) {
    alert('x and y are identical');}


查看完整回答
反对 回复 2019-07-16
  • 3 回答
  • 0 关注
  • 647 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信