Code Monkey home page Code Monkey logo

token-sort's Introduction

Token(ize) Sort

Greenkeeper badge

npm npm Build Status GitHub issues GitHub contributors David David Dev DUB

make sort more humane.

Token(ize) Sort for Array, for human, current project https://github.com/icai/token-sort.

OverView

title sort, title sort, 1,10,23456789, 😑

🤔, may be better.

Usage

Install

npm install token-sort --save

Options

  1. Overview
tokenSort(arr[,setting])

@setting
{
  field: String:'sort field for arr item'
  order: String: ['asc', 'desc']
  tokens: Object[Array][RegExp:String]: 'custom tokens'
}

@tokens {
    @exmaple
    number: [
      "[\\d.]+",
      "['零一二三四五六七八九十百千万亿']+",
    ]
}
  1. Use Short
tokenSort(arr[,field][,order])

@exmaple
tokenSort(arr, 'title') // field
tokenSort(arr, 'asc') // order
tokenSort(arr, 'title', 'asc') // field and order
  1. Sort by weight
@exmaple
 let arr =[{
    title: '第四章',
  }, {
    title: '第一章',
  }, {
    title: '第二章',
  },{
    title: '第七章last',
    _score: 0.3
  },{
    title: '第七章top',
    _score: 0.4
  }];

  tokenSort(arr, 'title')
  // Output [
  // {"title":"第一章"},
  // {"title":"第二章"},
  // {"title":"第四章"},
  // {"title":"第七章top","_score":0.4},
  // {"title":"第七章last","_score":0.3}
  // ]

Demo

const tokenSort = require('token-sort');

// Object::Array
let arr = [{
  title: '第四章'
},{
  title: '第一章',
}, {
  title: '第二章'
}];
tokenSort(arr, {
  field: 'title'
})
// equal to:
tokenSort(arr, 'title');

// String::Array
let longshort = [
  "第1章 课程3总结",
  "第1章 课程2概要分类",
  "第1章 课程1概要",
]
tokenSort(longshort);

If you need to see more demos, please checkout the unit tests.

-EOF

Happy 2018.

License

Copyright (c) 2018 Terry Cai. Licensed under the MIT license.

token-sort's People

Contributors

greenkeeper[bot] avatar icai avatar

Stargazers

 avatar

Watchers

 avatar  avatar

token-sort's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.