1 var baseToString = require(
'./_baseToString'),
2 castSlice = require(
'./_castSlice'),
3 hasUnicode = require(
'./_hasUnicode'),
4 isIterateeCall = require(
'./_isIterateeCall'),
5 isRegExp = require(
'./isRegExp'),
6 stringToArray = require(
'./_stringToArray'),
7 toString = require(
'./toString');
10 var MAX_ARRAY_LENGTH = 4294967295;
31 function split(
string, separator, limit) {
32 if (limit && typeof limit !=
'number' && isIterateeCall(
string, separator, limit)) {
33 separator = limit = undefined;
35 limit = limit === undefined ? MAX_ARRAY_LENGTH : limit >>> 0;
39 string = toString(
string);
41 typeof separator ==
'string' ||
42 (separator != null && !isRegExp(separator))
44 separator = baseToString(separator);
45 if (!separator && hasUnicode(
string)) {
46 return castSlice(stringToArray(
string), 0, limit);
49 return string.split(separator, limit);
52 module.exports = split;