@cake-fxd/rn-case
Version:
ReactNative Case
1 lines • 865 B
JavaScript
;var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.quickSort=quickSort;exports.countCharacters=countCharacters;var _typeof2=_interopRequireDefault(require("@babel/runtime/helpers/typeof"));function quickSort(arr,prop){if(arr.length<=1){return arr;}var pivotIndex=Math.floor(arr.length/2);var pivot=arr.splice(pivotIndex,1)[0];var left=[];var right=[];for(var i=0;i<arr.length;i++){var item=arr[i];if((0,_typeof2["default"])(item)==='object'?item[prop]<pivot[prop]:item<pivot){left.push(item);}else{right.push(item);}}return quickSort(left,prop).concat([pivot],quickSort(right,prop));}function countCharacters(str){var count=0;var i=0;while(i<str.length){var _char=str.charAt(i);if(/[^\x00-\xff]/gi.test(_char)){count+=2;}else{count+=1;}i++;}return count;}