You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							52 lines
						
					
					
						
							1.5 KiB
						
					
					
				
			
		
		
	
	
							52 lines
						
					
					
						
							1.5 KiB
						
					
					
				var baseToString = require('./_baseToString'), | 
						|
    castSlice = require('./_castSlice'), | 
						|
    hasUnicode = require('./_hasUnicode'), | 
						|
    isIterateeCall = require('./_isIterateeCall'), | 
						|
    isRegExp = require('./isRegExp'), | 
						|
    stringToArray = require('./_stringToArray'), | 
						|
    toString = require('./toString'); | 
						|
 | 
						|
/** Used as references for the maximum length and index of an array. */ | 
						|
var MAX_ARRAY_LENGTH = 4294967295; | 
						|
 | 
						|
/** | 
						|
 * Splits `string` by `separator`. | 
						|
 * | 
						|
 * **Note:** This method is based on | 
						|
 * [`String#split`](https://mdn.io/String/split). | 
						|
 * | 
						|
 * @static | 
						|
 * @memberOf _ | 
						|
 * @since 4.0.0 | 
						|
 * @category String | 
						|
 * @param {string} [string=''] The string to split. | 
						|
 * @param {RegExp|string} separator The separator pattern to split by. | 
						|
 * @param {number} [limit] The length to truncate results to. | 
						|
 * @returns {Array} Returns the string segments. | 
						|
 * @example | 
						|
 * | 
						|
 * _.split('a-b-c', '-', 2); | 
						|
 * // => ['a', 'b'] | 
						|
 */ | 
						|
function split(string, separator, limit) { | 
						|
  if (limit && typeof limit != 'number' && isIterateeCall(string, separator, limit)) { | 
						|
    separator = limit = undefined; | 
						|
  } | 
						|
  limit = limit === undefined ? MAX_ARRAY_LENGTH : limit >>> 0; | 
						|
  if (!limit) { | 
						|
    return []; | 
						|
  } | 
						|
  string = toString(string); | 
						|
  if (string && ( | 
						|
        typeof separator == 'string' || | 
						|
        (separator != null && !isRegExp(separator)) | 
						|
      )) { | 
						|
    separator = baseToString(separator); | 
						|
    if (!separator && hasUnicode(string)) { | 
						|
      return castSlice(stringToArray(string), 0, limit); | 
						|
    } | 
						|
  } | 
						|
  return string.split(separator, limit); | 
						|
} | 
						|
 | 
						|
module.exports = split;
 | 
						|
 |