0
すべての単一の整数を 'reduce'の後に取り出すことができましたが、重複がすべてある場合は出力されず、出力は0でなければなりません。どの時点で、単一の整数Javascriptを使用して配列内で単一の整数を見つける
var singleNumber = function(nums) {
var sorted_array = nums.sort();
for (var i=0; i < sorted_array.length; i++){
var previous = sorted_array[i-1];
var next = sorted_array[i+1];
var singles = {key: 0};
var singlesArray = [];
if (sorted_array[i] !== previous && sorted_array[i] !== next){
singlesArray.push(sorted_array[i]);
singlesArray.reduce(function(singles, key){
singles.key = key;
//console.log('key', key);
return singles.key;
},{});
}
else if(singlesArray.length === 0) {
singles.key = 0;
return singles.key;
}
}
console.log('singles.key', singles.key);
return singles.key;
};
console.log(singleNumber([2,1,3,4,4]));
対あなたは 'singleNumber()'範囲内の 'singles'変数に代入します。 'singles'にゼロ以外の値を代入するのはクロージャのスコープの内側だけです。 – Phylogenesis
ありがとうございます@Phylogenesis私はあなたが言っているが、シングルナンバー()スコープ内で非ゼロの値を割り当てる方法についてついています。私はforループとsingleNumber()内で、0のままでシングルスを動かそうとしました。 – gmatsushima
他の誰もが考えていますか?私は条件文を最初の 'if文'に入れ替え、まだsingles.key = 0を得ています。助けていただければ幸いです。 – gmatsushima