字符串对象的常用属性和方法:
内置属性:
length属性 返回字符串的长度
常用方法: 注意,调用这些方法本身不会改变原有字符串的内容,而是返回一个新字符串,共9个
toUpperCase()把一个字符串全部变为大写
toLowerCase()把一个字符串全部变为小写
indexOf() 返回某个指定的字符串值在字符串中首次出现的位置,如果没找到返回-1,indexOf() 方法区分大小写。
match() 用来查找字符串中特定的字符,如果找到,则返回这个字符
replace() 在字符串中用某些字符替换另一些字符
split() 将字符串分割为字符串数组,并返回此数组,
stringObject.split(separator,limit) 如果把空字符串 ("") 用作 separator,那么 stringObject 中的每个字符之间都会被分割。
var str="How are you doing today?";
var n=str.split(" "); // How,are,you,doing,today?
slice(start, end) 方法可提取字符串的某个部分,并以新的字符串返回被提取的部分
使用 start(包含) 和 end(不包含) 参数来指定字符串提取的部分,字符串中第一个字符位置为 0, 第二个字符位置为 1, 以此类推
如果是负数,则该参数规定的是从字符串的尾部开始算起的位置。也就是说,-1 指字符串的最后一个字符,-2 指倒数第二个字符,以此类推
var str="Hello world!";
var n=str.slice(1,5); // ello
substring() 提取字符串中介于两个指定下标之间的字符,string.substring(from, to)
substr() 从字符串中提取指定数目的字符,string.substr(start,length)
trim() 去除字符串两边的空白
charAt() 返回指定位置的字符,返回的字符是长度为 1 的字符串。如果参数 index 不在 0 与 string.length-1 之间,该方法将返回一个空字符串。
数组对象的常用属性和方法:
JavaScript的Array可以包含任意数据类型,并通过索引来访问每个元素。
length属性:获取Array的长度
常用方法:共11个
indexOf() 与String类似,Array也可以通过indexOf()来搜索一个指定的元素的位置
slice() slice()就是对应String的substring()版本,它截取Array的部分元素,然后返回一个新的Array
arrayObject.slice(start,end)
var arr = ['A', 'B', 'C', 'D', 'E', 'F', 'G'];
arr.slice(0, 3); // 从索引0开始,到索引3结束,但不包括索引3: ['A', 'B', 'C']
arr.slice(3); // 从索引3开始到结束: ['D', 'E', 'F', 'G']
注意到slice()的起止参数包括开始索引,不包括结束索引
如果不给slice()传递任何参数,它就会从头到尾截取所有元素。利用这一点,我们可以很容易地复制一个Array
var arr = ['A', 'B', 'C', 'D', 'E', 'F', 'G'];
var aCopy = arr.slice();
aCopy; // ['A', 'B', 'C', 'D', 'E', 'F', 'G']
aCopy === arr; // false
push和pop push()向Array的末尾添加若干元素,pop()则把Array的最后一个元素删除掉,
注意push()方法返回数组新的长度,而pop()方法则返回删除的元素
var arr = [1, 2];
arr.push('A', 'B'); // 返回Array新的长度: 4
arr; // [1, 2, 'A', 'B']
arr.pop(); // pop()返回'B'
arr; // [1, 2, 'A']
arr.pop(); arr.pop(); arr.pop(); // 连续pop 3次
arr; // []
arr.pop(); // 空数组继续pop不会报错,而是返回undefined
arr; // []
unshift和shift unshift()方法向Array的头部添加若干元素,shift()方法则把Array的第一个元素删掉
注意:unshift()方法返回数组新的长度,而shift()方法则返回删除的元素
var arr = [1, 2];
arr.unshift('A', 'B'); // 返回Array新的长度: 4
arr; // ['A', 'B', 1, 2]
arr.shift(); // 'A'
arr; // ['B', 1, 2]
arr.shift(); arr.shift(); arr.shift(); // 连续shift 3次
arr; // []
arr.shift(); // 空数组继续shift不会报错,而是返回undefined
arr; // []
sort sort()使数组中的元素按照一定的顺序排列,它会直接修改当前Array的元素位置,直接调用时,按照默认顺序排序
var arr = ['B', 'C', 'A'];
arr.sort();
arr; // ['A', 'B', 'C']
reverse reverse()用于颠倒数组中元素的顺序 arrayObject.reverse() 该方法会改变原来的数组,而不会创建新的数组。
var arr = ['one', 'two', 'three'];
arr.reverse();
arr; // ['three', 'two', 'one']
splice splice()方法是修改Array的“万能方法”,
它可以从指定的索引开始删除若干元素,然后再从该位置添加若干元素
注意,该方法返回的是删除的元素,若没有删除则返回空数组 []
var arr = ['Microsoft', 'Apple', 'Yahoo', 'AOL', 'Excite', 'Oracle'];
// 从索引2开始删除3个元素,然后再添加两个元素:
arr.splice(2, 3, 'Google', 'Facebook'); // 返回删除的元素 ['Yahoo', 'AOL', 'Excite']
arr; // ['Microsoft', 'Apple', 'Google', 'Facebook', 'Oracle']
concat concat() 方法用于连接两个或多个数组。此方法返回一个新数组,不改变原来的数组。
var arr = ['A', 'B', 'C'];
var added = arr.concat([1, 2, 3]);
added; // ['A', 'B', 'C', 1, 2, 3]
arr; // ['A', 'B', 'C']
实际上,concat()方法可以接收任意个元素和Array,并且自动把Array拆开,然后全部添加到新的Array里
var arr = ['A', 'B', 'C'];
arr.concat(1, 2, [3, 4]); // ['A', 'B', 'C', 1, 2, 3, 4]
join join()方法是一个非常实用的方法,arrayObject.join(分隔符)
用于把数组中的所有元素放入一个字符串,并通过指定的分隔符进行分隔,即可把数组转化为字符串
var arr = ['A', 'B', 'C', 1, 2, 3];
arr.join('-'); // 'A-B-C-1-2-3'
如果Array的元素不是字符串,将自动转换为字符串后再连接