首页 > 其他分享 >JS——字符串

JS——字符串

时间:2022-11-23 17:12:36浏览次数:43  
标签:slice 索引 JS var China str 字符串

常规操作:

  • 可以使用单引号或多引号来表示字符串。
var answer = "It's good to see you again!";
var carname = "Porsche 911";
var carname = 'Porsche 911';
  • 使用\转义字符串中的引号。
var x = "中国是瓷器的故乡,因此 china 与\"China(中国)\"同名。"
  •  对长字符串换行的最安全做法(但是有点慢)是使用字符串加法:
document.getElementById("demo").innerHTML = "Hello" + 
"Kitty!";
  • 创建方法:

请不要把字符串创建为对象,它会拖慢执行速度。new关键字使代码复杂化,也可能产生一些意想不到的结果。

//字面方式创建
var x = "Bill";
//关键词new定义为对象
var y = new String("Bill");

// typeof x 将返回 string
// typeof y 将返回 object
var x = "Bill";             
var y = new String("Bill");

// (x === y) 为 false,因为 x 和 y 的类型不同(字符串与对象)

因为创建的是对象,所以无法进行比较。

var x = new String("Bill");             
var y = new String("Bill");

// (x == y) 为 false,因为 x 和 y 是不同的对象

属性:

  • length(计算长度)

可返回字符串的长度。

var txt = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
var sln = txt.length;

 方法:

  • indexOf(查找首次出现文本)

    1. 返回字符串中指定文本首次出现的索引(位置);
    2. 从0开始计算位置
    3. 未找到文本返回-1
    4. 无法设置正则表达式
var str = "The full name of China is the People's Republic of China.";
var pos = str.indexOf("China");
var str = "The full name of China is the People's Republic of China.";
var pos = str.indexOf("China", 18);
//表示18位置以后开始检索。
  • lastIndexOf(查找最后出现文本)

    1. 和indexOf一样
var str = "The full name of China is the People's Republic of China.";
var pos = str.lastIndexOf("China");
  • search(查找文本可使用正则)

var str = "The full name of China is the People's Republic of China.";
var pos = str.search("locate");
  • 索引提取

  • slice(索引提取)

  1. 提取字符串中某个部分并在新字符串中返回呗提取的部分。
  2. 两个参数,一个开始索引,一个结束索引。
  3. 如果某个参数为负,则从字符串的结果开始计数。
  4. 如果省略第二个参数,则该方法将剪切字符串的剩余部分。
  5. 负值位置不适用internetExplorer8及更早版本
var str = "Apple, Banana, Mango";
var res = str.slice(7,13);
var str = "Apple, Banana, Mango";
var res = str.slice(-13,-7);
var res = str.slice(7);
  • substring(索引提取)

  1. 不接受负值索引。其他和slice一样。
  • substr(索引提取)

  1. 不同之处在于第二个参数规定呗提取部分的长度。而不是结尾
  2. 第二个参数不能为负数
  3. 其他和slice相同
var str = "Apple, Banana, Mango";
var res = str.substr(7,6);
  • replace(替换)

  1. 不会改变原有字符串,而是返回一个新的字符串
  2. 默认只替换首个匹配,需要全局所搜,使用/g.
  3. 默认对大小写敏感,如需执行大小写不敏感的替换,使用正则的/i,写正则时不带引号。
str = "Please visit Microsoft!";
var n = str.replace("Microsoft", "W3School");
str = "Please visit Microsoft and Microsoft!";
var n = str.replace(/Microsoft/g, "W3School");
str = "Please visit Microsoft!";
var n = str.replace(/MICROSOFT/i, "W3School");

 

标签:slice,索引,JS,var,China,str,字符串
From: https://www.cnblogs.com/xinbing/p/16917722.html

相关文章