Angularのチュートリアルをやっていて見慣れない記述が気になりました:
+params.get('id')
この+
はunary plusといいまして、値を数値に変換してくれるそうです:
JSFiddleでテストした結果は以下の通り:
console.log(+"3"); // 3 console.log(+'3'); // 3 console.log(+'-3'); // -3 console.log(+''); // 0 console.log(+'0'); // 0 console.log(+true); // 1 console.log(+false); // 0 console.log(+null); // 0
''が0になるのが気持ち悪いと思うのは僕だけでしょうか?
parseIntですと次の結果になります:
console.log(parseInt("3",10)); // 3 console.log(parseInt('3',10)); // 3 console.log(parseInt('-3',10)); // -3 console.log(parseInt('',10)); // NaN console.log(parseInt('0',10)); // 0 console.log(parseInt(true,10)); // NaN console.log(parseInt(false,10)); // NaN console.log(parseInt(null,10)); // NaN