Сообщение Re[5]: Python и JavaScript от 10.06.2019 6:58
Изменено 10.06.2019 6:59 Буравчик
Re[5]: Python и JavaScript
Здравствуйте, Lazytech, Вы писали:
L>Разве? Я о том, что в JavaScript, как и в Python, бывают такие заковыристые конструкции:
L>Как мне кажется, это даже покруче смешения чисел со строками.
Во-первых, конструкция
это идиома, используемая в некоторых языках. В принципе, достаточно понятная. В некоторых языках для этого вводят вводят новый оператор, типа "??".
В питон тоже тоже думают ввести операторы для null.
Во-вторых, только в javascript при получении отсутствующего элемента из массива возврщается null (undefined). На мой взгляд, это один из самых серьезных косяков js.
Это сильно отличается от питона и других языков, в них, как и в питоне, будет брошено исключение.
Поэтому на питоне было бы скорее все так:
или
или вообще лучше использовать defaultdict. Как раз для этих целей сделан (в стандартной библиотеке).
L>Разве? Я о том, что в JavaScript, как и в Python, бывают такие заковыристые конструкции:
L>Как мне кажется, это даже покруче смешения чисел со строками.
Во-первых, конструкция
myVar || 0
это идиома, используемая в некоторых языках. В принципе, достаточно понятная. В некоторых языках для этого вводят вводят новый оператор, типа "??".
В питон тоже тоже думают ввести операторы для null.
Во-вторых, только в javascript при получении отсутствующего элемента из массива возврщается null (undefined). На мой взгляд, это один из самых серьезных косяков js.
Это сильно отличается от питона и других языков, в них, как и в питоне, будет брошено исключение.
Поэтому на питоне было бы скорее все так:
itemCounts[item] = itemCounts.get(item, 0) + 1
или
itemCounts.setdefault(item, 0)
itemCounts[item] =+ 1;
или вообще лучше использовать defaultdict. Как раз для этих целей сделан (в стандартной библиотеке).
Re[5]: Python и JavaScript
Здравствуйте, Lazytech, Вы писали:
L>Разве? Я о том, что в JavaScript, как и в Python, бывают такие заковыристые конструкции:
L>Как мне кажется, это даже покруче смешения чисел со строками.
Во-первых, конструкция
это идиома, используемая в некоторых языках. В принципе, достаточно понятная. В некоторых языках для этого вводят вводят новый оператор, типа "??".
В питон тоже тоже думают ввести операторы для null.
Во-вторых, только в javascript при получении отсутствующего элемента из массива возврщается null (undefined). На мой взгляд, это один из самых серьезных косяков js.
Это сильно отличается от питона и других языков, в них, как и в питоне, будет брошено исключение.
Поэтому на питоне было бы скорее все так:
или
или вообще лучше использовать defaultdict. Как раз для этих целей сделан (в стандартной библиотеке).
L>Разве? Я о том, что в JavaScript, как и в Python, бывают такие заковыристые конструкции:
L>Как мне кажется, это даже покруче смешения чисел со строками.
Во-первых, конструкция
myVar || 0
это идиома, используемая в некоторых языках. В принципе, достаточно понятная. В некоторых языках для этого вводят вводят новый оператор, типа "??".
В питон тоже тоже думают ввести операторы для null.
Во-вторых, только в javascript при получении отсутствующего элемента из массива возврщается null (undefined). На мой взгляд, это один из самых серьезных косяков js.
Это сильно отличается от питона и других языков, в них, как и в питоне, будет брошено исключение.
Поэтому на питоне было бы скорее все так:
itemCounts[item] = itemCounts.get(item, 0) + 1
или
itemCounts.setdefault(item, 0)
itemCounts[item] += 1;
или вообще лучше использовать defaultdict. Как раз для этих целей сделан (в стандартной библиотеке).