Этот работает очень хорошо для меня.
$("#checkall").click(function() {
var fruits = $("input[name=fruits\\[\\]]");
fruits.prop("checked", $(this).prop("checked"));
});
В Perl следующие выражения в условных выражениях оцениваются как ложные:
0
'0'
undef
'' # Empty scalar
() # Empty list
('')
Остальные верны. Нет голых слов для истина
или ложь
.
Perl не имеет собственного логического типа, но вы можете использовать сравнение целых чисел или строк, чтобы получить такое же поведение. Пример Алана - хороший способ сделать это, используя сравнение целых чисел. Вот пример
my $boolean = 0;
if ( $boolean ) {
print "$boolean evaluates to true\n";
} else {
print "$boolean evaluates to false\n";
}
Одна вещь, которую я проделал в некоторых своих программах, - это добавление того же поведения с использованием константы:
#!/usr/bin/perl
use strict;
use warnings;
use constant false => 0;
use constant true => 1;
my $val1 = true;
my $val2 = false;
print $val1, " && ", $val2;
if ( $val1 && $val2 ) {
print " evaluates to true.\n";
} else {
print " evaluates to false.\n";
}
print $val1, " || ", $val2;
if ( $val1 || $val2 ) {
print " evaluates to true.\n";
} else {
print " evaluates to false.\n";
}
Строки, отмеченные как «использовать константу», определяют константу с именем true, которая всегда принимает значение 1, и константа с именем false, которая всегда оценивается как 0. Из-за того, как константы определены в Perl, следующие строки кода также не работают:
true = 0;
true = false;
В сообщении об ошибке должно быть указано что-то вроде «Не удается изменить константу в скалярном присваивании. "
Я видел это в одном из комментариев, который вы спрашивали о сравнении строк.
I recommend use boolean;
. Однако вам придется установить модуль boolean из cpan.