Чи існує еквівалент javascript для оператора передачі python, який нічого не робить?


89

Я шукаю еквівалент javascript для passоператора python , який нічого не робить. Чи є таке в javascript?


18
Хіба {}порожні брекети - це не те саме?
sagarchalise

@sagarchalise це правда
Aryan Beezadhur

nullдля цього іноді використовують, як уif (condition) null;
Діма Паржицький

Відповіді:


138

Python в passосновному існує, оскільки в Python пробіли мають значення всередині блоку. У Javascript еквівалентом буде введення нічого в блок, тобто {}.


28

використовувати //passяк pythonpass

люблю:

if(condition){
   //pass
}

Це еквівалентно залишенню блоку, нічого в ньому немає, але це добре з причин читабельності.

посилання з https://eslint.org/docs/rules/no-empty


16

пропуск python необхідний для порожніх блоків.

try:
    # something
except Exception:
    pass

У javascript ви можете просто зловити порожній блок

try {
    // some code
} catch (e) {
    // This here can be empty
}

3

На passжаль, Javascript не має еквівалента python .

Наприклад, у javascript неможливо зробити щось подібне:

process.env.DEV ? console.log('Connected..') : pass

Натомість ми повинні зробити це:

if (process.env.DEV) console.log('Connected..')

Перевага використання passтвердження, серед іншого, полягає в тому, що в процесі розробки ми можемо еволюціонувати з вищенаведеного прикладу потрійного оператора в цьому випадку без необхідності перетворювати його в повний ifвиклад.


Це працює точно так само в Python, ви не можете використовувати passв умовному виразі, вам доведеться використовувати умовний вираз
juanpa.arrivillaga

1

Я виявив, що я отримую помилку з порожніми фігурними дужками, замість цього я туди ввожу крапку з комою, в основному те саме:

try { //something; } catch (err) { ; }

7
Яку помилку ви отримуєте з порожніми фігурними дужками, у яких немає крапки з комою всередині?

1

У деяких випадках це passможе бути просто так;

Прикладом із реального життя може бути:

var j;
for (j = i + 1; j < binstrN.length && binstrN[j] != 1; j++) {
}
let count = j - i;

це те саме, що

var j;
for (j = i + 1; j < binstrN.length && binstrN[j] != 1; j++);
let count = j - i;

Тут ми намагаємось перейти jдо наступного '1', хоча iвін уже був до '1' перед цим, отже, countдається відстань між першими двома '1' у двійковому рядку рядкаbinstrN


0

Якщо ви хочете просто скористатися оператором пропуску в тернарному операторі або просто в операторі if у JS, ви можете зробити це:

a === true && console.log('okay')

Ви можете використовувати також використовуйте || оператора, але ви повинні знати, що || є протилежністю &&. Тоді, якщо ви хочете використовувати Pass у функції або блоці загалом, як це робимо в Python, ось так:

def Func(): pass

У JS слід просто залишити блок порожнім, як це:

 if(){ 
    console.log('ok')
    }else{}

Зрештою, в Python немає фігурних дужок, тож це основна причина, через яку ми маємо пропуск.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.