有时,两种语言会对相同或相似的语法表达赋予不同的含义。当这两种语言都对程序员感兴趣时,澄清这些分歧点有助于更好地理解这两种语言的基本用法和细微差别。
Section 187.1: in 与列表
2 in [2, 3]
在 Python 中,这会返回 True,但在 JavaScript 中会返回 false。这是因为 Python 中的 in 用于检查一个值是否包含在列表中,因此 2 在 [2, 3] 中作为第一个元素存在。而在 JavaScript 中,in 用于对象,并检查对象是否包含由值表示名称的属性。因此,JavaScript 将 [2, 3] 视为一个对象或类似键值对的映射,如下所示:
{'0': 2, '1': 3}
然后检查它是否包含键 '2'。整数 2 会被隐式地转换为字符串 '2'。