问题标签 [comparison-operators]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
146 浏览

php - 仅在完成所有检查后才执行更新脚本

我有一个更新脚本,可以更新用户名、密码、电话、用户生成的 ID 等。假设用户决定更改他/她的电话但不更改用户名。但是当他们去编辑他们的信息时,上面提到的所有字段都出现在表单上。因此,还与用户想要更改的内容一起提交。所以我使用下面的代码来检测它。因此,如果字段中的用户名与从会话中提取的用户名匹配,则表示可以继续,如果不是,则打印用户名已被使用。但问题是我必须运行此查询两次,一次用于用户名,一次用于用户的唯一 ID。此外,当更新脚本位于页面底部时,它会变得复杂。下面的代码将检测到它,但它们会在 echo 处停止。

检查1:

检查2:

0 投票
2 回答
321 浏览

c++ - 类型擦除和互操作性:C++ 中的虚拟二元运算符问题

我在通过重写的相等运算符比较同一接口的模板实现时遇到问题。

我想出的唯一解决方案是强制只比较相同实现的对象并像这样实现比较:

这个解决方案的问题是它对我的目的来说太有限了——我希望能够比较不同的实现。如果实现的数量有限,则可以使用双分派模式。但在我的例子中,Impl 是一个模板,所以双重分派是不可能的,因为它需要一个虚函数模板:

有什么解决办法吗?我需要这个来编写可以包装任何 STL 迭代器的 AnyIterator 类。但是我无法比较 AnyIterators,如果它们被包裹在不同的类型中,例如 iterator 和 const_iterator:

0 投票
1 回答
185 浏览

c++ - c++中大型复杂结构的比较(运算符重载)

在准备我的项目和使用 C++ 编写代码时,我们必须面临严重的问题。我的代码建立在多个结构/类上,其中一个包含在另一个结构/类中。最后,我将不得不比较所有这些结构。在这种情况下,不可能(或需要付出巨大的努力)为所有内容重载比较运算符。您可能知道如何解决这个问题吗?我考虑编写一个脚本,它将遍历所有类和子类并添加所需的运算符以避免编写它们。您是否遇到过这种情况并找到解决方案?我提前感谢所有建议。

亲切的问候,

0 投票
6 回答
6707 浏览

php - 我无法比较 PHP 中的两个字符串

它应该输出“no”,但输出“ok”。我究竟做错了什么?

0 投票
2 回答
21664 浏览

javascript - JS中==和===的区别

可能的重复:
JavaScript 中 == 和 === 之间的区别
Javascript === vs == :我使用哪个“相等”运算符有关系吗?

==和有什么区别===?也在!==和之间!==

0 投票
2 回答
1797 浏览

c++ - 将 shared_ptr 与自定义相等运算符和 STL 一起使用的问题

将共享指针与自定义相等运算符和 std::list 一起使用时似乎存在问题。

我将以下示例代码放在一起来演示该问题。

在尝试编译之前:

我正在使用gcc version 4.5.2 20110127

使用以下命令行:

g++ -g -O0 -std=gnu++0x test.cpp

如果未启用 c++0x 功能,则源将无法编译。

我原以为代码会结束,Success但它会抛出。

插入一个*infront oftest*it解决了这个问题,但我的理解是,当 shared_ptr__a.get() == __b.get()在其==运算符中调用时,它应该使用自定义相等运算符 of TestInt。我不明白为什么不是。这是一个错误吗?

提前致谢。

0 投票
2 回答
8924 浏览

javascript - javascript: 什么是 NOT NOT?(!! 操作员 )

可能重复:
什么是!! JavaScript 中的运算符?

什么是 not not in javascript 我已经看过几次了 :)

0 投票
4 回答
36348 浏览

javascript - JavaScript 比较运算符:身份与平等

我一直试图理解 JavaScript 的比较运算符之间的区别:身份和相等。根据我的阅读,如果您使用 == 检查两个对象的相等性,JavaScript 将尝试确定它们是否为同一类型,如果不是,则尝试将它们设为同一类型。但是, === 的行为方式不同。举个例子:

那么这些“身份”运算符和常规的相等运算符有什么区别呢?两者兼得有什么好处?

性能上有区别吗?我认为身份运算符会更快,因为它不进行转换。

此外,当涉及到更复杂的对象(如数组)时,它们有何不同?最重要的是,约定什么时候应该使用另一个,为什么?

0 投票
3 回答
13357 浏览

javascript - JavaScript 相等传递性很奇怪

我一直在阅读Douglas Crockford 的JavaScript: The Good Parts,我遇到了这个对我来说没有意义的奇怪示例:

作者还继续提到“永远不要使用==and !=。相反,总是使用===and !==”。但是,他没有解释为什么会出现上述行为?所以我的问题是,为什么上面的结果是这样的?JavaScript 中没有考虑传递性吗?

0 投票
2 回答
1102 浏览

sql - SQLite 元组相等比较

使用 PostgreSQL 和 MySQL 可以做类似的事情

当我在 SQLite3 上尝试相同的操作时,它给了我一个令人筋疲力尽的错误消息:

从 SQLite 文档中我无法确定它是否支持元组。任何人都可以对此有所了解吗?