ch4.2 JavaScript函数、对象及其主要内建对象


4.2.1 函数(Function)

4.2.2 JS对象(Object)

(3) 示例11.
(3) 示例12.
(3) 示例13.
(3) 示例14.
(3) 示例15.
(3) 示例6.

4.2.3 JS字符串(String)

声明String对象、计算长度

构造new String(),长度.length。示例1. new String()

var 变量名 = "你是小狗. "示例2. = "你是小狗. "

序号 语法格式 功能描述 参赛描述 实例、源代码
1.获取位置字符 strObj.charCodeAt(index)或strObj[index] 返回指定位置字符 index字符位置,有效值为0到字符串长度减1,如果超出有效范围返回空字符串。 示例
strObj.charCodeAt(index) 返回指定位置字符unicode编码 index字符位置,有效值为0到字符串长度减1,如果超出有效范围返回NaN。 示例
String.fromCharCode([code1[,code2...]]) 返回由Unicode编码合成的字符串 code1,code2...是要转换为字符串的Unicode编码。如果没有参数返回空字符串。 示例
2.查找子串位置 strObj.indexOf(substr[,start]) 返回第一次出现子字符串位置 substr查找的子串;start开始位置,若省略则从开始处查找。如果没有找到则返回-1。 示例
strObj.lastIndexOf(substr[,start]) 返回最后一次出现子字符串的位置 substr查找的子串;start开始位置,若省略则从末尾处开始查找。如果没有找到则返回-1。 示例
strObj.match(reExp) 示例
strObj.search(reExp) 示例
3.获取子串 strObj.substr(start[,length]) 返回从指定位置开始的指定长度的子字符串 start起始位置,第一个字符的位置索引为0;length指定长度。 示例
strObj.substring(start,end) 返回位于start和end位置之间的子字符串 start起始位置,end结束位置,从0开始起算。如果start或end为NaN或者为负数,那么将其替换为0。 使用start和end两者中的较小值作为子字符串的起始点。 示例
strObj.slice(start[,end]) start、end从0开始计算位置。如果start为负将length+start作为开始位置。如果end为负将length+end作为结束位置。length为字符串的长度。 示例
4.大小写 strObj.toUpperCase() strObj字符串中的字母被转换成大写。 示例
strObj.toLowerCase() strObj字符串中的字母被转换成小写。 示例
5.串数组转换 strObj.split([separator[,limit]]) 将strObj字符串分割为子字符串,然后将结果作为字符串数组返回。 separator分隔字符串或正则表达式对象,它标识了分隔字符串时使用的分隔字符。如果忽略该选项,返回包含整个字符串的单一元素数组。 limit该值用来限制返回数组中的元素个数。 示例
示例
6.字符串连接 strObj.concat([string1[,string2...]]) 返回strObj和string1,string2连接的字符串 string1,string2要和所有其他指定的字符串进行连接的String对象或文字。 示例
7.前后空格截取 strObj.trim() 示例
8.字符串替换 replace() 示例
13.3 基本数据类型(数值--大小、字符串(unicode)--前后、true|false|null、NaN|Infinity|undefined)
 (10) 字符串方法(长度.length; String.fromCharCode(97,98,99); .charAt(4); .charCodeAt(4) )
 (14) 判断浏览器是否支持Cookie(boolean测试)
13.4 复合类型
 (1) 数组声明、数组元素赋值、数组长度
 (2) 函数(function)
 (3) 函数2(typeof age === "number")
 (11) 子串出现的位置(indexOf/lastIndexOf)
 (12) 求子串(.slice())
 (13) 匹配正则表达式(.search(), .match())
 (16) 字符串替换(.replace()正则表达式)
var str = 'hello world' str.indexOf('l');//2,返回找到的第一个字符的位置 str.indexOf('l',6);//9 1.扩展字符串 concat() 接受任意数量参数,用于将一个或多个字符串拼接起来,返回拼接得到新的字符串副本。 var str = new String('hello'); var result = str.concat(' world'); console.log(result);//hello world typeof result//"string" 2.获取子字符串方法 slice(),substr(),substring(),这三个方法都会返回被操作字符串的子字符串副本,而且也都接受1或2个参数,前闭后开[) (1)slice() var str = 'hello'; str.slice(0,2);//"he",第一个参数指定字符串开始的位置,第二个参数表示字符串到哪里结束 str.slice(-3);//"llo",o代表-1,依次倒数,-3代表倒数第三个的l str.slice(-2,-1);//"l",同理,-2代表倒数第二个l,-1代表倒数第一的o (2)substring() var str = 'hello'; str.substring(0,2);//"he",此时的参数意义同str.slice(0,2) str.substring(-3);//"hello",substring()方法会把所有负值参数转换为0 str.substring(-3,-2);//"",同上 (3)substr() var str = 'hello'; str.substr(1,2);//"el",第一个参数指定字符串的开始位置,第二个参数指定的则是返回的字符个数 str.substr(-3);//"llo",此时的参数意义同str.slice(-3) str.substr(-3,-1);//"",substr()方法会将负的第二个参数转换为0 substr()方法传递负值时在IE中存在问题,它会返回原始的字符串,IE9修复了这个问题 3.将字符串转换为数组(split) 基于指定的分隔符(可以是字符串,也可以是RegExp对象)将字符串分割成多个子字符串,并将结果放在一个数组中,可接受可选的第二个参数,用于指定数组的大小,返回数组。 var color = 'blue,red,orange'; color.split();//["red,blue,orange"],长度为1 color.split(',');//["blue", "red", "orange"],长度为3 var color = 'blue-red-orange'; color.split('-');//["blue", "red", "orange"],长度为3 color.split(',',2);//["blue", "red"] 5.删除字符串空格方法 trim() 删除字符串中前置以及后缀的所有空格,然后返回结果副本。 var str = ' hello world '; str.trim()//"hello world" 6.字符串的模式匹配方法 (1)match() 参数:只接受一个参数,要么是一个正则表达式,要么是一个RegExp()对象。 返回:数组。数组中的第一项是与整个模式匹配的字符串,之后的每一项(如果有)保存着正则表达式捕获组匹配的字符串 本质上与调用exec()相同。 var text = 'cat, bat, sat, fat'; var pattern = /.at/; var matches = text.match(pattern); matches // ["cat"] matches.input // "cat, bat, sat, fat" matches.index // 0 (2)search() 参数:与match()方法相同。 返回:字符串中第一个匹配项的索引,如果没有匹配项,则返回-1。 search()方法始终从前向后找 var text = 'cat, bat, sat, fat'; var pattern = /at/; text.search(pattern) // 1 (3)replace() 参数:接收两个参数,第一个参数可以是一个RegExp对象或者一个字符串(这个字符串不会转换成正则表达式),第二个参数可以是一个字符串或者一个函数。 如果 第一个参数是字符串,那么只会替换第一个子字符串。要想替换所有子字符串,唯一的办法就是提供一个正则表达式,而且要指定全局标志(g)标志。 如果 第二个参数是字符串,那么还可以使用一些特殊的字符序列,将正则表达式操作得到的值插入到结果字符串中。 也可以是函数,传递给函数的参数依次是模式的匹配项,模式的匹配项在字符串中的位置,和原始字符串。在正则表达式定义了多个捕获组的情况下,传递给函数的参数依次是模式的匹配项,第一个捕获组的匹配项,以此类推,但最后两个参数分别是模式的匹配项在字符串中的位置和原始字符串。

4.2.4 Date内建对象

get getUTC set setUTC
new new Date() new Date(年, 月, 日,) new Date(年, 月, 日, 时, 分, 秒) new Date(年, 月, 日, 时, 分, 秒, 毫秒)
new new Date(毫秒数) new Date("month dd,yyyy") new Date("month dd,yyyy hh:mm:ss")
dObj.getFullYear() dObj.setFullYear(4位年) dObj.getUTCFullYear() dObj.setUTCFullYear(4位年)
dObj.getMonth() dObj.setMonth(月) dObj.getUTCMonth() dObj.setUTCMonth(月)
dObj.getDate() dObj.setDate(日) dObj.getUTCDate() dObj.setUTCDate(日)
星期 dObj.getDay() dObj.getUTCDay()
dObj.getHours() dObj.setHours(时) dObj.getUTCHours() dObj.setUTCHours(时)
dObj.getMinutes() dObj.setMinutes(分) dObj.getUTCMinutes() dObj.setUTCMinutes(分)
dObj.getSeconds() dObj.setSeconds(秒) dObj.getUTCSeconds() dObj.setUTCSeconds(秒)
毫秒 dObj.getMilliseconds() dObj.setMilliseconds(毫秒) dObj.getUTCMilliseconds() dObj.setUTCMilliseconds(毫秒)
毫秒数 dObj.getTime() dObj.setTime(毫秒数) dObj.getTimezoneOffset valueOf
to字符串 dObj.toString() dObj.toUTCString() dObj.toLocaleString()
to字符串 dObj.toDateString() dObj.toLocaleDateString() dObj.toTimeString() dObj.toLocaleTimeString()

年份4位:1970-9999; 月份:0-11,0代表1月,11代表12月; 星期:0-6,0代表星期天; month:英文

4.2.5 Array内建对象


返回本章目录

 (5) Math类方法
 (4) with语句