Skip to content

Instantly share code, notes, and snippets.

@murayama
Created July 9, 2013 01:44
Show Gist options
  • Save murayama/5954013 to your computer and use it in GitHub Desktop.
Save murayama/5954013 to your computer and use it in GitHub Desktop.
javascriptのチルダ演算子

javascriptのチルダ演算子

javascriptの「~」チルダ演算子はビット反転演算子で、整数をビット反転させると符号を反転させて1引いた数になる

console.log(~-4); // 3
console.log(~-3); // 2
console.log(~-2); // 1
console.log(~-1); // 0
console.log(~0);  // -1
console.log(~1);  // -2
console.log(~2);  // -3
console.log(~3);  // -4
console.log(~4);  // -5

上記の通り、-1のときだけ0になる
indexOfが値が存在しない場合に-1を返すので組み合わせると下記のようにできる

var arr = [1,2,3];
if (!~arr.indexOf(0)) {
  // indexが存在しない
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment