Попробуйте использовать NULL в качестве значения в файле csv для поля ID.
return !1
означает return false
и return !0
- return true
. В спецификации - 11.4.9 Логический оператор NOT - когда вы размещаете! напротив, результат оценивается как Boolean, и возвращается обратное.
var a = 1, b = 0;
var c = a || b;
alert ( "c=" + c + " " + typeof c ); // here c will be number
a = !0, b = !1;
c = a || b;
alert ( "c=" + c + " " + typeof c ); // here it will be boolean
Я в основном вижу это в коде, прошедшем через оптимизатор Google. Я думаю, что в основном это делается для достижения короткого кода.
Он часто используется, когда необходим логический результат - вы можете увидеть что-то вроде !!(expression)
. Например, поиск в jQuery.
Здесь код проверяет:
"case 1", "case true", "case yes", "case y", "Case 1"
"case !0"
return "true"
Это, кажется, особенно глупый способ возврата true
или false