工作期间总结的JavaScript数组和字符串常用方法

Array  和  String  常用方法
 
  • Array 常用方法 
<script type="text/javascript">
var arr = ["a", "b", "c", "1", "2", "3"];
//栈(LIFO)方法: push 和 pop
//队列(FIFO)方法: push 和 shift
 
push
//在数组的末尾增加一个或多个元素,并返回数组的新长度。
console.log(arr.push("x", "x", "x")); // 9
arr.push([2]); // [2] 会被当作一项 即:arr[6] 是 [2]
 
pop
//删除数组的最后一个元素,并返回这个元素。
console.log(arr.pop()); // 3
 
unshift
//在数组的开头添加一个或者多个元素,并返回数组新的 length 值。
console.log(arr.unshift());
 
shift
//删除数组的 第一个 元素,并返回这个元素。
console.log(arr.shift()); // a
 
join
//将数组中的所有元素连接成一个字符串。
console.log(arr.join()); // a,b,c,1,2,3
 
concat
//将传入的数组或非数组值与原数组合并,组成一个新的数组并返回
console.log(arr.concat(0, 9)); // ["a", "b", "c", "1", "2", "3", 0, 9]
console.log(arr.concat([0, 9])); // ["a", "b", "c", "1", "2", "3", 0, 9]
console.log(arr.concat([[9]])); // ["a", "b", "c", "1", "2", "3", 0, [9]]
 
sort
//对数组的元素做原地的排序,并返回这个数组。
arr = [2, 0, 1, 6];
console.log(arr.sort()); // [0, 1, 2, 6]
arr.sort(function(a, b) {
  console.log(a + " - " + b);
  // return a - b; // 从小到大
  return b - a; // 从大到小
});
console.log(arr);
 
slice
//把数组中一部分的 浅复制 存入一个新的数组对象中,并返回这个新的数组
arr = [{a: 9}];
var ret = arr.slice(0, 1);
console.log(ret); // [{a: 9}]
ret[0].a = 10;
console.log(arr[0].a); // 10
 
splice
//用新元素替换旧元素,以此修改数组的内容。
//参数:
//第一个参数:表示开始位置
//第二个参数:长度
//剩余参数: 要添加到数组中的元素
console.log(arr.splice(3, 3)); // ["1", "2", "3"]
arr.splice(3, 0, "x", "x")
console.log(arr);
 
reverse
//将数组进行翻转,返回新的数组
console.log(arr.reverse ()); //["3","2","1","c","b","a"];
</script>
 
 
  • String  常用方法
<script type="text/javascript">
var str = "abc123def666";
//charAt() 方法返回字符串中指定位置的字符。
//参数:index
console.log(str.charAt(6)); // d
 
//indexOf() 方法返回 指定值 在字符串对象中首次出现的位置。
//从 fromIndex 位置开始查找,如果不存在,则返回 -1。
//注意:区分大小写
console.log(str.indexOf("123")); // 3
console.log(str.indexOf("123", 2)); // 3
 
//正则方法
search
//执行一个查找,看该字符串对象与一个正则表达式是否匹配。
console.log(str.search("1")); // 3
console.log(str.search(/[0-9]/)); // 3
 
replace
被用来在正则表达式和字符串直接比较,然后用新的子串来替换被匹配的子串。
console.log(str.replace("1", "-one-"));
console.log(str.replace(/\d/, "-one-"));
 
match
//当字符串匹配到正则表达式(regular expression)时,
//match() 方法会提取匹配项。
console.log(str.match(/\d+/)); // ["123", index: 3, input: "abc123def666"]
 
split
//通过把字符串分割成子字符串来把一个 String 对象分割成一个字符串数组。
console.log(str.split("1")); // ["abc", "23def666"]
 
slice
//提取字符串中的一部分,并返回这个新的字符串
//获取索引号为1,2,3的字符串,即[1, 4)
console.log(str.slice(1, 4)); // bc1
 
substr
//方法返回字符串中从指定位置开始到指定长度的子字符串。
//开始位置 和 长度
console.log(str.substr(3, 3)); // 123
 
substring
//返回字符串两个索引之间(或到字符串末尾)的子串。
//开始位置 和 结束位置
console.log(str.substring(3, 6)); // 123
 
trim()
//删除一个字符串两端的空白字符
str = " abc123 def666 ";
console.log("|" + str.trim() + "|"); // |abc123 def666|
 
toLowerCase()
//将调用该方法的字符串值转为小写形式,并返回。
console.log(str.toLowerCase()); // abc123def666
 
toUpperCase()
//将字符串转换成大写并返回。
console.log(str.toUpperCase()); // ABC123DEF666
</script>
posted @ 2016-10-22 21:03  maweibaba  阅读(101)  评论(0编辑  收藏  举报