在条件运算符中是否存在等效于Python的Javascript?

Red*_*ket -1 javascript

有没有相当于Python的in条件运算符的Javascript ?

good = ['beer', 'pizza', 'sushi']
thing = 'pizza'
if thing in good:
    print 'hurray'
Run Code Online (Sandbox Code Playgroud)

在Javascript中编写上述Python代码的好方法是什么?

Cer*_*nce 5

你可以使用.includes:

const good = ['beer', 'pizza', 'sushi']
const thing = 'pizza';
if (good.includes(thing)) console.log('hurray');
Run Code Online (Sandbox Code Playgroud)

请注意,这与Javascript的in运算符完全分开,后者检查某些东西是否是对象的属性:

const obj = { foo: 'bar'}
const thing = 'foo';
if (thing in obj) console.log('yup');
Run Code Online (Sandbox Code Playgroud)

请注意,这includes是来自ES6 - 确保包含polyfill.如果你不能这样做,你可以使用旧的,较少的语义indexOf:

const good = ['beer', 'pizza', 'sushi']
const thing = 'pizza';
if (good.indexOf(thing) !== -1) console.log('hurray');
Run Code Online (Sandbox Code Playgroud)