この質問が重複している場合は申し訳ありませんが、検索方法がわかりません。この質問は、専門の JavaScript プログラマーにとっては「奇妙」に聞こえるかもしれませんが、私はそうではありません。
私は基本的に、別のコード行を無駄にすることなく、「1 行のリターン」を実行しようとしています。私はそれが良くないことを知っています、そして以下は本番用のコードではありません:
var _ = require('underscore');
module.exports = function (digits) {
if (!/^\d+$/.test(digits)) return undefined;
var precomp = [0, 2, 4, 6, 8, 1, 3, 5, 7, 9];
var sum = _.reduce(digits.toString(), function (mem, dgt, idx) {
return mem + (idx % 2 == 0 ? parseInt(dgt) : precomp[dgt]);
}, 0);
return (var mod = sum % 10 == 0) ? 0 : 10 - mod; // Error
};
var
キーワードのため、最後の行はエラーをスローします。PHPで時々同じことをしたことを覚えています。
編集:答えの前に質問を読むのはそれほど「難しい」とは思いません...私はそれが可能かどうか尋ねています。それが正しい、見栄えが良いなどと言っているのではありません。
(ちなみにこれがルーンチェック計算です)