This article mainly introduces the common usage methods related to string in Javascript. Has very good reference value. Let’s take a look at it with the editor
I was just reading the Javascript Rhino book and saw the section on strings. I don’t have much exposure to this aspect in my daily work, so I thought I would sort it out in case I need it. .
One of the built-in functions of Javascript is string concatenation. If you use '+' to connect two numbers, it means adding the two numbers. But if used in a string, it means that the second character is added after the first character.
var num=1+2; console.log(num); var msg='hello'+'world'; console.log(msg);
For strings, in addition to the length attribute, there are many other useful attributes, such as:
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());
Tips: The string itself is fixed in JavaScript. The above methods will return a new string value and will not affect the value of str itself.
It is worth noting that in ES6 , adds many new methods to strings, such as:
var s = 'Hello world!'; // 返回布尔值,表示参数字符串是否在源字符串中的头部 console.log(s.startsWith('Hello')) // true //endsWith():返回布尔值,表示参数字符串是否在源字符串的尾部 console.log(s.endsWith('!')) // true // includes()返回布尔值,表示是否找到了参数字符串 console.log(s.includes('o')) // true
The above three methods all support the second parameter, which indicates the position to start search
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
Tip: endsWith behaves differently than the other two methods. It targets the first n characters, while the other two methods target from the nth position until the end of the string.
The repeat method returns a new string, which means repeating the original string n times.
console.log('x'.repeat(3)) // "xxx" console.log('hello'.repeat(2)) // "hellohello" console.log('na'.repeat(0)) // ""
If the parameter is a decimal, it will be rounded.
console.log('na'.repeat(2.9)) // "nana" //如果repeat的参数是负数或者Infinity,会报错。 console.log('na'.repeat(Infinity)) // RangeError console.log('na'.repeat(-1)) // RangeError
However, if the parameter is a decimal between 0 and -1, it is equivalent to 0, because the rounding operation will be performed first. A decimal between 0 and -1 is equal to -0 after rounding, and repeat is regarded as 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 introduces the function of string completion length. If a string is not long enough, it will be completed at the head or tail. padStart() is used for head completion, padEnd() is used for tail completion
//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"
The above is the detailed content of Summary of commonly used string usage methods in Javascript. For more information, please follow other related articles on the PHP Chinese website!