>  기사  >  웹 프론트엔드  >  Javascript에서 일반적으로 사용되는 문자열 사용 방법 요약

Javascript에서 일반적으로 사용되는 문자열 사용 방법 요약

黄舟
黄舟원래의
2017-03-20 14:58:311473검색

이 글에서는 Javascript에서 흔히 사용되는 String의 사용법을 주로 소개합니다. 매우 좋은 참조 값을 가지고 있습니다. 아래 에디터와 함께 살펴보겠습니다

방금 Javascript Rhino 책을 읽다가 문자열에 대한 섹션을 보고 일상 업무에서 이 부분에 대한 노출이 많지 않아서 생각했습니다. 긴급 상황이 발생하면 정리하겠습니다.

자바스크립트에 내장된 기능 중 하나는 문자열 연결입니다. '+'를 사용하여 두 숫자를 연결한다는 것은 두 숫자를 더한다는 의미입니다. 그러나 문자열에 사용될 경우 첫 번째 문자 뒤에 두 번째 문자가 추가된다는 의미입니다.

var num=1+2;
console.log(num);
var msg='hello'+'world';
console.log(msg);

문자열의 경우 길이 속성 외에도 다음과 같은 유용한 속성이 많이 있습니다.

var str='hello,world';
console.log(str.length);
console.log(str.charAt(0)); //第一个字符 
console.log(str.charAt(str.length-1)); // 最后一个字符 
//substring(starti,endi), 截取 字符串 起始startistartii, 到endi结束,且含头不含尾,没有
// 如果第二个参数没有, 就默认截取到最后一个。  
console.log(str.substring(1,4));
console.log(str.substring(1));
//用法同上,为负数时,就是倒数开始算,一个参数含义是倒数几个。
console.log(str.slice(1,4));
console.log(str.slice(-3));
//字符‘l'首次出现的位置 
console.log(str.indexOf('l'));
//字符‘l'最后一次出现的位置 
console.log(str.lastIndexOf('l'));
//在位置下标3之后,首次出现的位置 
console.log(str.indexOf('l',3));
//用‘,'分割为字符串
console.log(str.split(','));
// 把str中的小写h换成大写H
console.log(str.replace('h','H'));
//讲字符串转化为大写
console.log(str.toUpperCase());

팁: 문자열 자체는 JavaScript에서 수정되었습니다. 위 메서드는 새로운 문자열 값을 반환하며 str 자체의 값에는 영향을 주지 않습니다.

ES6에서는 에 많은 새로운 메서드가 추가된다는 점에 주목할 가치가 있습니다.

var s = 'Hello world!';
// 返回布尔值,表示参数字符串是否在源字符串中的头部
console.log(s.startsWith('Hello')) // true
//endsWith():返回布尔值,表示参数字符串是否在源字符串的尾部
console.log(s.endsWith('!')) // true
// includes()返回布尔值,表示是否找到了参数字符串
console.log(s.includes('o')) // true

위의 세 가지 방법은 모두

var s = 'Hello world!';
console.log(s.startsWith('world', 6)) // true
console.log(s.endsWith('Hello', 5))// true
console.log(s.includes('Hello', 6)) // false

를 검색하기 위한 의 시작 위치를 나타내는 두 번째 매개변수를 지원합니다. : endsWith는 다른 두 메서드와 다르게 동작합니다. 처음 n자를 대상으로 하는 반면, 다른 두 가지 방법은 n번째 위치부터 문자열 끝까지를 대상으로 합니다.
repeat 메소드는 새 문자열을 반환하는데, 이는 원래 문자열을 n번 반복한다는 의미입니다.

console.log('x'.repeat(3)) // "xxx"
console.log('hello'.repeat(2)) // "hellohello"
console.log('na'.repeat(0)) // ""

매개변수가 소수이면 반올림됩니다.

console.log('na'.repeat(2.9)) // "nana"
//如果repeat的参数是负数或者Infinity,会报错。
console.log('na'.repeat(Infinity))
// RangeError
console.log('na'.repeat(-1))
// RangeError

단, 매개변수가 0에서 -1 사이의 소수인 경우 반올림 연산이 먼저 수행되므로 0과 같습니다. 0에서 -1 사이의 소수는 반올림 후 -0이 되며, 반복은 0으로 간주됩니다.

console.log('na'.repeat(-0.9)) // ""
//参数NaN等同于0
console.log('na'.repeat(NaN)) // "
//如果repeat的参数是字符串,则会先转换成数字
console.log('na'.repeat('na')) // ""
console.log('na'.repeat('3')) // "nanana"

ES2017에는 문자열 완성 길이 기능이 도입되었습니다. 문자열이 충분히 길지 않으면 머리나 꼬리에서 완성됩니다. padStart()는 머리 완성에 사용되고, padEnd()는 꼬리 완성에 사용됩니다

//padStart和padEnd一共接受两个参数,第一个参数用来指定字符串的最小长度,第二个参数是用来补全的字符串。
console.log('x'.padStart(5, 'ab')) // 'ababx'
console.log('x'.padStart(4, 'ab')) // 'abax'
console.log('x'.padEnd(5, 'ab')) // 'xabab'
console.log('x'.padEnd(4, 'ab')) // 'xaba'
//如果原字符串的长度,等于或大于指定的最小长度,则返回原字符串。
console.log('xxx'.padStart(2, 'ab')) // 'xxx'
console.log('xxx'.padEnd(2, 'ab')) // 'xxx'
//如果用来补全的字符串与原字符串,两者的长度之和超过了指定的最小长度,则会截去超出位数的补全字符串。
consoe.log('abc'.padStart(10, '0123456789'))
// '0123456abc'
//如果省略第二个参数,默认使用空格补全长度。
console.log('x'.padStart(4)) // ' x'
console.log('x'.padEnd(4)) // 'x '
//padStart的常见用途是为数值补全指定位数。下面代码生成10位的数值字符串。
console.log('1'.padStart(10, '0') )// "0000000001"
console.log('12'.padStart(10, '0')) // "0000000012"
console.log('123456'.padStart(10, '0')) // "0000123456"
//另一个用途是提示字符串格式。
console.log('12'.padStart(10, 'YYYY-MM-DD')) // "YYYY-MM-12"
console.log('09-12'.padStart(10, 'YYYY-MM-DD'))// "YYYY-09-12"

위 내용은 Javascript에서 일반적으로 사용되는 문자열 사용 방법 요약의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.