javascript - 在以下 OR 语句中需要一些明确性,而一个工作正常而另一个不能
问题描述
将代词视为对象中的范围变量(例如 let person = {})方法(例如 this.bio = function(){})和 this.gender 作为对象属性。
这段代码工作得很好:并返回,适当的代词“他/她/他们”取决于它包含的性别
if(this.gender === "m" || this.gender === "male" || this.gender === "M" || this.gender === "Male") {
pronoun = "he";
} else if(this.gender === "f" || this.gender === "female" || this.gender === "F" || this.gender === "Female") {
pronoun = "she"
} else {
pronoun = "they"
}
这段代码的工作原理只返回“他”
if(this.gender === "m" || "male" || "M" || "Male") {
pronoun = "he";
} else if(this.gender === "f" || "female" || "F" || "Female") {
pronoun = "she"
} else {
pronoun = "they"
}
谁能帮我理解为什么?谢谢。
解决方案
推荐阅读
- authentication - 如何根据登录用户进行过滤?
- javascript - 在 js 文件中导入成为 'myProperty' 已定义但从未使用过
- java - SessionNotCreatedException:无法创建新的远程会话
- arrays - C程序:在数组末尾插入一个元素
- django - 使 virtualenv 中的 PyPy 使用操作系统中的共享库而不是它自己的副本(libsqlite3)
- google-sheets - 根据使用范围,Google 表格公式未显示 0
- flutter - 如何在 Flutter 中以编程方式从本地存储安装 .apk 文件?
- asp.net-core - 如何将过滤器添加到使用 asp.net 核心应用程序创建的报告中?
- php - PHP MYsql | 选择编号较小的前 4 个项目
- python - 我在函数中定义了一个变量,但它在输出中不起作用。附上代码