【问题标题】:What is going on with the 'in' function in javascript? [duplicate]javascript中的'in'函数发生了什么? [复制]
【发布时间】:2019-09-17 15:30:45
【问题描述】:

最近破坏我的代码的事情是我天真地认为:

'+' in ['+','-',...] = true

唯一的问题是它实际上评估为假!

请有人帮我理解这里发生了什么!

【问题讨论】:

  • = 用于为变量或属性赋值; ===== 用于比较。 in 运算符也松散地绑定;用括号括起来是个好主意。
  • 您需要Array#includes 来检查一个项目是否存在于数组中。
  • 当然“+”不是数组的属性;它是数组的 element 的值,但这不是 in 所做的。
  • @Pointy IIRC,其他语言(Python?)中的in 运算符实际上检查值是否在数组中。因此,如果来自那里,那么假设 JS in 以相同的方式工作似乎是一个正常的假设。

标签: javascript


【解决方案1】:

如果指定的属性在 指定对象或其原​​型链。

来源:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/in

【讨论】:

    猜你喜欢
    • 2021-06-06
    • 2012-08-11
    • 2018-08-11
    • 2017-06-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-18
    • 2018-03-03
    相关资源
    最近更新 更多