SoFunction
Updated on 2025-03-01

Simple permission system (implementation) based on logical operations JS version

Author: slightboy, Time: 2006-10-17
This article is a JS implementation version. The principle has been explained before, so I won't explain it here.
If you need a principle introduction, please check the VBS version.
var PermissionType =
{
    Read : 1,
    Write : 2,
    Delete : 4
}
function PermissionSetComponent(value)
{
     = value;
     = function()
    {
        return ();
    }
     = function(value)
    {
        (, value);
    }
     = function()
    {
        if ( > 0)
            (, arguments[0]);
        else
            return ();
    }
     = function()
    {
        if ( > 0)
            (, arguments[0]);
        else
            return ();
    }
     = function()
    {
        if ( > 0)
            (, arguments[0]);
        else
            return ();
    }
     = function(permissionType)
    {
        return ( & permissionType) == permissionType;
    }
     = function(permissionType, value)
    {
        if (value)
             |= permissionType;
        else
             &= ~permissionType;
    }
}
var PermissionSet = new PermissionSetComponent(0);
w("Read:");
(false);
w( +" "+ ());
(true);
w( +" "+ ());
w("Write:");
(false);
w( +" "+ ());
(true);
w( +" "+ ());
w("Delete:");
(false);
w( +" "+ ());
(true);
w( +" "+ ());
function w(o)
{
    (o +"<br />");
}
Note: The red part is java style writing, which is not necessary for this example.
Just make a presentation. If you prefer the Java style, you can also choose this writing method.