[javascript] PHP Explode ()와 동등한 자바 스크립트
이 문자열이 있습니다.
0000000020C90037 : TEMP : 데이터
이 문자열이 필요합니다.
TEMP : 데이터.
PHP로 나는 이것을 할 것입니다 :
$str = '0000000020C90037:TEMP:data';
$arr = explode(':', $str);
$var = $arr[1].':'.$arr[2];
explode
PHP에서 작동하는 방식으로 JavaScript에서 효과적으로 문자열을 어떻게 사용합니까 ?
답변
이것은 PHP 코드에서 직접 변환 한 것입니다.
//Loading the variable
var mystr = '0000000020C90037:TEMP:data';
//Splitting it with : as the separator
var myarr = mystr.split(":");
//Then read the values from the array where 0 is the first
//Since we skipped the first element in the array, we start at 1
var myvar = myarr[1] + ":" + myarr[2];
// Show the resulting value
console.log(myvar);
// 'TEMP:data'
답변
분할하지 않아도됩니다. 당신은 사용할 수 있습니다 indexOf
및 substr
:
str = str.substr(str.indexOf(':')+1);
그러나 이에 상응하는 explode
것입니다 split
.
답변
String.prototype.explode = function (separator, limit)
{
const array = this.split(separator);
if (limit !== undefined && array.length >= limit)
{
array.push(array.splice(limit - 1).join(separator));
}
return array;
};
PHP의 explode () 함수를 정확하게 모방해야합니다.
'a'.explode('.', 2); // ['a']
'a.b'.explode('.', 2); // ['a', 'b']
'a.b.c'.explode('.', 2); // ['a', 'b.c']
답변
당신이 분할 을 원하는 것 같습니다
답변
이 시도:
arr = str.split (":");
답변
create는 객체입니다.
// create a data object to store the information below.
var data = new Object();
// this could be a suffix of a url string.
var string = "?id=5&first=John&last=Doe";
// this will now loop through the string and pull out key value pairs seperated
// by the & character as a combined string, in addition it passes up the ? mark
var pairs = string.substring(string.indexOf('?')+1).split('&');
for(var key in pairs)
{
var value = pairs[key].split("=");
data[value[0]] = value[1];
}
// creates this object
var data = {"id":"5", "first":"John", "last":"Doe"};
// you can then access the data like this
data.id = "5";
data.first = "John";
data.last = "Doe";
답변
String.split 사용
"0000000020C90037:TEMP:data".split(':')