这里有新鲜出炉的 Javascript 教程,程序狗速度看过来!
Javascript 是一种由 Netscape 的 LiveScript 发展而来的原型化继承的基于对象的动态类型的区分大小写的客户端脚本语言,主要目的是为了解决服务器端语言,比如 Perl,遗留的速度问题,为客户提供更流畅的浏览效果。
字符串和数字的操作在 js 中非常频繁,也非常重要。以往看完书之后都能记得非常清楚,但稍微隔一段时间不用,便会忘得差不多,记性不好是硬伤啊。下面这篇文章就对字符串和数字的一些常用操作做个整理,一者加深印象,二者方便今后温习查阅。需要的朋友们可以参考借鉴。
1、
– 返回字符串的长度
- length
- 'abcd'.length; //4
2、
– 向上取整,不管小数点后面是多少,哪怕. 00001,也会向上进一位。
- Math.ceil(num)
- Math.ceil(25.9); //26
- Math.ceil(25.5); //26
- Math.ceil(25.1); //26
3、
– 向下取整,不管小数点后面是多少,哪怕. 99999,也会向下减一位。
- Math.floor(num)
- Math.floor(25.9); //25
- Math.floor(25.5); //25
- Math.floor(25.1); //25
4、
– 四舍五入。
- Math.round(num)
- Math.round(25.9); //26
- Math.round(25.5); //26
- Math.round(25.1); //25
5、
– 返回数的绝对值。
- Math.abs(num)
- Math.abs( - 10); // 10
- Math.abs(10); // 10
- Math.abs( - 10.5); // 10.5
6、
– 可返回指定的数中最大的那个数 [在 ECMASCript v3 之前,该方法只有两个参数]。
- Math.max(n,n1,n2)
- Math.max(1, 32, 4, 5, 6, 7, 87) //87
7、
– 可返回指定的数中最小的那个数 [在 ECMASCript v3 之前,该方法只有两个参数]。
- Math.min(n,n1,n2)
- Math.max(1, 32, 4, 5, 6, 7, 87) //1
8、
– 随机数,如返回指定数字之间的随机数,公式是:
- Math.random()
- Math.random()*(y-x) + x
- //返回0-1之间的随机数,默认带有小数的
- Math.random();
- //下面只返回0和1的随机数,记住是和,不是0就是1
- Math.round( Math.random() )
- //5-10的随机数
- Math.round( Math.random()*5 + 5 )
- //10-20的随机数
- Math.round( Math.random()*10 + 10 )
- //0-100的随机数
- Math.round( Math.random()*100 )
Math 还有很多方法,其它的不常用,这里就不做介绍了,具体可查看这篇文章。
9、
– 返回指定位置的字符。
- charAt()
- 'abcd'.charAt(0); //a
- 'abcd'.charAt(1); //b
- 'abcd'.charAt(2); //c
10、
– 获取指定位置字符的编码(
- charCodeAt()
编码)。
- unicodo
- 'abcd '.charCodeAt(1) //98
- 'abcd'.charCodeAt(2) //99
11、
– 可接受一个或者多个指定的
- fromCharCode()
值,然后返回一个字符串。
- Unicode
- String.fromCharCode(97) //a
- String.fromCharCode(97, 98, 99, 100, 101, 102) //abcdef
12、
– 返回字符串中一个子串第一处出现的索引。如果没有匹配项,返回 -1 。
- indexOf()
- 'abcd '.indexOf('b') //1
- 'abcd '.indexOf('g') //-1
13、
– 如果是一个参数,返回下标从
- substring()
处开始到结束的字符;如果是两个参数,则提取字符串从
- start
到
- start
之间的字符。
- end-1
- 'abcd'.substring(3) //d
- 'abcd'.substring(0,3) //abc
- 'abcd'.substring(1,2) //b
14、
– 如果是一个参数,返回下标从
- substr()
处开始到结束的字符;如果是两个参数,则提取字符串从
- start
位置开始截取
- start
位。
- end
- 'abcd'.substr(3) //d
- 'abcd'.substr(0,2) //ab
- 'abcd'.substr(1,2) //bc
15、
– 如果是一个参数,返回下标从
- slice()
处开始到结束的字符,如果是负数,则从后面开始取值几位字符;如果是两个参数,则提取字符串从
- start
到
- start
之间的字符,如果第一个是负数,那么第二个不能小于第一个字符的位置,这个比较绕。
- end-1
具体看下面的代码。
- 'abcd'.slice(-1) //d
- 'abcd'.slice(-2) //cd
- 'abcd'.slice(3) //d
- 'abcd'.slice(0,2) //ab
- 'abcd'.slice(1,2) //b
- //此时-2,选取到c的位置,后面的2,根据规则,位置应该是2-1,也就是b的位置,所以返回的是空
- 'abcd'.slice(-2,2) //
- //此时-2,选取到c的位置,后面的3,根据规则,位置应该是3-1,也就是c的位置,所以返回为c
- 'abcd'.slice(-2,3) //c
16、
– 字符串替换。
- replace()
- //把a替换成x
- 'abcd '.replace('a',
- 'x') //xbcd
- //只能替换第一次匹配的内容,后面的不做匹配
- 'abacad '.replace('a',
- 'x') //xbacad
- //如果要全部匹配替换,需要配合正则
- 'abacad '.replace(/a/gi,'x ') //xbxcxd '
17、
– 字符串分割成数组。如果一个参数,则根据参数来分割,如果两个,则根据第二个参数,取几个
- split()
- //如果是一个空字符,则把字符串每一个都分割开
- 'abcd '.split(""); //"a", "b", "c", "d"
- //如果是一个空格,则根据空格分割,如果没有空格,直接输出原字符串
- 'ab cd'.split(""); //"ab", "cd"
- //如果是一个空格,则根据空格分割,如果没有空格,直接输出原字符串
- 'abacad '.split("a"); //"", "b", "c", "d"
- 'abacad'.split("a", 2); //"", "b"
18、
– 将小写字符串转换成大写
- toUpperCase()
- 'abcd'.toUpperCase(""); //ABCD
19、
– 将大写字符串转换成小写
- toUpperCase()
- 'ABCD'.toUpperCase(""); //abcd
20、
– 字符串转成数字,遇到非数字既停止,第一个字符不能被转换为数字,返回
- parseInt()
- NaN
- parseInt('123abc') //123
- parseInt('abc123′) //NaN
21、
– 字符串转成小数,遇到非数字既停止,第一个字符不能被转换为数字,返回
- parseFloat()
- NaN
- parseInt('10') //10
- parseInt('10abc') //10
- parseInt('10.256′) //10.256
- parseInt('10.25W6′) //10.25
- parseInt('W60′) //NaN
总结
以上就是关于 js 中字符串和数字的操作方法的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。
来源: http://www.phperz.com/article/17/0614/328208.html