Socket
Socket
Sign inDemoInstall

binary-case

Package Overview
Dependencies
0
Maintainers
1
Versions
6
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    binary-case

Take a string and a number and perform binary case switching on alpha characters.


Version published
Weekly downloads
216K
decreased by-3.35%
Maintainers
1
Install size
31.5 kB
Created
Weekly downloads
 

Readme

Source

NPM version NPM downloads Build status Test coverage

binary-case

Take a string and a number and perform binary case switching on alpha characters.

Example

const binaryCase = require('binary-case');

// 3 in binary = 011
const number = 3;

// 011 reversed to 110 so the first 2 characters will toggle case
const value = binaryCase('abc', 3);     // value: "ABc"

Installation

$ npm install binary-case

API

binaryCase ( string, number [, options ] ) : string | boolean

Take a string and a number and perform binary case switching on alpha characters.

Parameters

  • string - The string value to toggle alpha character cases on.

  • number - A number that will be converted to binary to determine case switching.

  • options - An optional object that defines options for the function.

    • allowOverflow - Defaults to true. Set to false to have the binaryCase function return false when the number provided creates a binary string that is larger than the number of alpha characters in the string provided to be converted. Overflow will cause case switching sequences to repeat.

      binaryCase('abc', 0);                               // 'abc'
      binaryCase('abc', 8);                               // 'abc'
      binaryCase('abc', 8, { allowOverflow: false });     // false
      

Returns a string if successful or false on failure.

binaryCase.iterator ( string [, options ] ) : object

Get an iterator object that will allow iteration through all variations of the string's casing.

Parameters

  • string - The string to produce case variations for.

  • options - An optional object that defines options for the iterator.

    • startIndex - The number to start with for producing variations. This will reduce the total number of possible variations.

Returns an object with a next property.

Example

const iterator = binaryCase.iterator('abc');
iterator.next().value;  // 'abc'
iterator.next().value;  // 'Abc'
iterator.next().value;  // 'aBc'
iterator.next().value;  // 'ABc'

binaryCase.maxNumber ( string ) : number

Determine the maximum number that can be used before causing repeating case variations.

Parameters

  • string - The string value to count the number of possible case variations on.

Returns a number.

This calculation is simple:

  1. Determine how many alpha characters exist in the string (a through z and A through Z)
  2. The result is 2 to the power of the number of alpha characters, minus 1.

For example: abc has 3 alpha characters. 2^3 - 1 = 7

binaryCase.variations ( string ) : string[]

Get an array of all possible case variations.

Parameters

  • string - The string value to get case variations for.

Returns an array of strings.

Keywords

FAQs

Last updated on 23 Mar 2018

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc