在 JavaScript 中,三个等于号 (===) 执行严格相等比较,既比较类型又比较值,而双等于号 (==) 执行松散相等比较,可能尝试强制转换值类型。建议使用严格相等比较来避免意外结果。

js中的三个等于号 (===)
JavaScript 中的三个等于号 (===) 操作符用于进行严格相等比较,它与双等于号 (==) 运算符不同。
严格相等比较 (===)
- 三个等于号 (===) 操作符执行严格相等比较,这表示比较值类型和值本身。
- 如果两个值类型相同且值本身也相等,则返回
true。 - 否则,返回
false。
双等于比较 (==)
- 双等于号 (==) 操作符执行松散相等比较,它会尝试将值强制转换为相同类型,然后再进行比较。
- 这可能会导致意外结果,因为 JavaScript 会尝试将值转换为不同的类型以匹配比较。
示例
技术上面应用了三层结构,AJAX框架,URL重写等基础的开发。并用了动软的代码生成器及数据访问类,加进了一些自己用到的小功能,算是整理了一些自己的操作类。系统设计上面说不出用什么模式,大体设计是后台分两级分类,设置好一级之后,再设置二级并选择栏目类型,如内容,列表,上传文件,新窗口等。这样就可以生成无限多个二级分类,也就是网站栏目。对于扩展性来说,如果有新的需求可以直接加一个栏目类型并新加功能操作
考虑以下示例:
console.log(1 === 1); // true console.log(1 === "1"); // false console.log(true === 1); // false
在第一行中,这两个值类型和值本身都相同,因此返回 true。
在第二行中,值类型不同(数字和字符串),因此返回 false。
在第三行中,JavaScript 将 true 转换为 1 进行比较,因此返回 false。
使用指南
一般情况下,建议使用严格相等比较 (===) 来避免意外结果。这是因为松散相等比较 (==) 可能会导致混乱,尤其是在处理不同类型的值时。









