JavaScript內置對象之字符串

建議學習時長: 30分鐘
學習方式:深入

學習目標

  • 知道什么是字符串
  • 了解字符串的常見方法

詳細介紹

概述

見這里 http://javascript.ruanyifeng.com/stdlib/string.html

常見方法

獲取字符串信息

  • 是否是字符串
typeof 'abc' === 'string'; // 返回 true
typeof {} === 'string'; // 返回 false
typeof 123 === 'string'; // 返回 false
  • string.indeOf - 查詢字符串中是否包含指定子字符串。若存在,則返回子字符串在字符串中的下標,否則返回 -1。
var str = 'abcde';
str.indexOf('b'); // 返回 1
str.indexOf('cd'); // 返回 2
str.indexOf('###'); // 返回 -1
  • string.length - 返回數組長度
var str = 'abcde';
str.length; // 返回 5
  • string.charAt(下標) - 取字符串中指定下標的字符。如果下標小于0或大于字符串長度,返回空字符。取指定下標的字符也可以用 string[下標]。
var str = 'abc';
str.charAt(1); // 返回 'b'
str[1]; // 返回 'b'
str.charAt(4); // 返回 ''yy
str.charAt(-1); // 返回 ''
var str = 'abcde';
str.substring(1);// 返回 'bcde'
str.substring(1,3);// 'bc'
str.substring(0,3);// 'abc'
var str = 'abcde';
str.substr(1);// 返回 'bcde'
str.substr(1,3);// 返回 'bcd'
str.substr(0,3);// 返回 'abc'

字符串變換

var str = 'My name is {name}';
str.replace('{name}', 'Joel'); // 返回 'My name is Joel'
str; // 返回 'My name is {name}'
str = 'abc';
// 轉成大寫
str.replace(/[a-z]/, function(item){
  return item.toUpperCase();
});// 返回 'Abc'
str.replace(/[a-z]/g, function(item){
  return item.toUpperCase();
});// 返回 'ABC'
var str = 'abc1';
str.toUpperCase(); // 返回 'ABC1'
str; // 返回 'abc1'
  • string.toLowerCase - 將字符串變成小寫。
  • string.trim - 去除字符串兩頭的空格(包括 space, Tab 等)。IE 9+ 支持該方法。
var str = '   abc   ';
str.trim(); // 返回 'abc'
str; // 返回 '   abc   '
// 對于 IE 8 等老瀏覽器,可以做以下的兼容。如果用 jQuery ,可以用 $.trim(str)
if (!String.prototype.trim) {
  String.prototype.trim = function () {
    return this.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, '');
  };
}
var str = 'abc';
str.split(''); // 返回 ['a', 'b', 'c']
str; // 'abc'
str = 'a&b&c';
str.split('&'); // 返回 ['a', 'b', 'c']
str = 'a334b344c';
str.split(/\d+/); // 返回 ['a', 'b', 'c']
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容