{{user.r...">

Difference between!! and! in javascript

I came across those operators that check the property user.rank:

<div ng-show="!!user.rank">
    {{user.rank}}
</div>
<button ng-show="!user.rank"  ng-click="addRank(user)">Add Rank</button>

How do they differ and what can we use instead?

+4
source share
2 answers

One bit ( !) is used to negate a boolean value .

Double strike ( !!) is used to force the value of truth / falsity to logical true or false.

eg

var x = 0; // a falsey value
console.log(x); // logs 0
console.log(!x)// logs true
console.log(!!x)// logs false

var y = "Hello world"; // a truthy value
console.log(y); // logs "Hello world"
console.log(!y)// logs false
console.log(!!y)// logs true
Run codeHide result

Applies to your specific case.

ng-show="!!user.rank"

ng-show, , , user.rank, , , , - angular.

+15

!! () JavaScript?

JS wiki SO

!!:

" oObject boolean. (, 0, null, undefined ..), false, - true."

" (,! 5 , 5 JS), boolean- , (!! 5 )"

", , !"

-1

Source: https://habr.com/ru/post/1678710/


All Articles