一、引子
今天我们就来说说Javascript的字符串操作,以及跑马灯的示例,这个场景我们经常用到,所以好好研究一下。
二、定义变量
1、定义局部变量
说明:99%的情况下,都是定义的局部变量。定义局部变量:var 变量名="值"
|
2、定义全局变量
说明:这个情况下,一般不能乱定义,只有确定下来之后才能定义。 定义全局变量: 变量名="值"
|
JavaScript中变量的声明是一个非常容易出错的点,局部变量必须一个 var 开头,如果未使用var,则默认表示声明的是全局变量。
|
三、数字和字符串数据类型
3.1、数字类型
说明:JavaScript中不区分整数值和浮点数值,JavaScript中所有数字均用浮点数值表示。
|
转换:
- parseInt(..) 将某值转换成数字,不成功则NaN
- parseFloat(..) 将某值转换成浮点数,不成功则NaN
|
特殊值:
- NaN,非数字。可使用 isNaN(num) 来判断。
- Infinity,无穷大。可使用 isFinite(num) 来判断。
|
更多数值计算:
1 常量
2
3 Math.E
4 常量e,自然对数的底数。
5
6 Math.LN10
7 10的自然对数。
8
9 Math.LN2
10 2的自然对数。
11
12 Math.LOG10E
13 以10为底的e的对数。
14
15 Math.LOG2E
16 以2为底的e的对数。
17
18 Math.PI
19 常量figs/U03C0.gif。
20
21 Math.SQRT1_2
22 2的平方根除以1。
23
24 Math.SQRT2
25 2的平方根。
26
27 静态函数
28
29 Math.abs( )
30 计算绝对值。
31
32 Math.acos( )
33 计算反余弦值。
34
35 Math.asin( )
36 计算反正弦值。
37
38 Math.atan( )
39 计算反正切值。
40
41 Math.atan2( )
42 计算从X轴到一个点的角度。
43
44 Math.ceil( )
45 对一个数上舍入。
46
47 Math.cos( )
48 计算余弦值。
49
50 Math.exp( )
51 计算e的指数。
52
53 Math.floor( )
54 对一个数下舍人。
55
56 Math.log( )
57 计算自然对数。
58
59 Math.max( )
60 返回两个数中较大的一个。
61
62 Math.min( )
63 返回两个数中较小的一个。
64
65 Math.pow( )
66 计算xy。
67
68 Math.random( )
69 计算一个随机数。
70
71 Math.round( )
72 舍入为最接近的整数。
73
74 Math.sin( )
75 计算正弦值。
76
77 Math.sqrt( )
78 计算平方根。
79
80 Math.tan( )
81 计算正切值。
3.2、字符串
说明:JavaScript中不区分整数值和浮点数值,JavaScript中所有数字均用浮点数值表示。
|
转换:
- parseInt(..) 将某值转换成数字,不成功则NaN
- parseFloat(..) 将某值转换成浮点数,不成功则NaN
|
特殊值:
- NaN,非数字。可使用 isNaN(num) 来判断。
- Infinity,无穷大。可使用 isFinite(num) 来判断。
|
更多数值计算:
Math
3.2、字符串
说明:字符串是由字符组成的数组,但在JavaScript中字符串是不可变的:可以访问字符串任意位置的文本,但是JavaScript并未提供修改已知字符串内容的方法。
常见功能:
|
ps:JS 是驼峰式命名,第二个单词首字母大写。
1、charAt(n)
说明:返回字符串中的第n个字符
1 name="keven"
2 "keven"
3 name.charAt(1)
4 "e"
2、substring(from ,to)
说明:根据索引获取子序列,顾头不顾尾 类似python 类表的切片
1 name="chenkeven"
2 "chenkeven"
3 name.substring(1,5)
4 "henk"
3、lenght
说明:获取字符串的长度,相当于python len
1 name
2 "chenkeven"
3
4 name.length
5 9
4、trim() ,trimLeft(), trimRight()
说明:移除字符串两边的空白,相当于python 的strip()
1 name=" keven "
2 " keven "
3 name.trim()
4 "keven"
5 name= " keven"
6 " keven"
7 name.trimLeft()
8 "keven"
9 name="keven "
10 "keven "
11 name.trimRight()
12 "keven"
5、concat
说明:拼接字符串
1 a ="a"
2 "a"
3 b="b"
4 "b"
5 c="c"
6 "c"
7 a.concat(b,c)
8 "abc"
6、indexof(substring,strar)
说明:类似index
1 name="chenkeven"
2 "chenkeven"
3 name.indexOf("k")
4 4
7、slice(start,end)
说明:切片,遵循顾头不顾尾原则
1 name
2 "chenkeven"
3 name.slice(1,6)
4 "henke"
8、toLowerCase()
说明:变成小写
1 name="KEVENCHEN"
2 "KEVENCHEN"
3 name.toLowerCase()
4 "kevenchen"
9、toUpperCase()
说明:变成大写
1 name="keven"
2 "keven"
3 name.toUpperCase()
4 "KEVEN"
10、split(delimiter,limit)
说明:分割,delimiter:分割符,limit:拿前几个值
name="wo,shi,hen,niu,bi,de"
"wo,shi,hen,niu,bi,de"
name
"wo,shi,hen,niu,bi,de"
name.split(",",3)
["wo", "shi", "hen"]
name.split(",",2)
["wo", "shi"]
name.split(",",4)
["wo", "shi", "hen", "niu"]
四、定时器
4.1、定时器
说明:我们每隔多长时间执行一下某个程序,我们成为定时任务,setInterval("定时任务名",间隔时间),时间是以ms为单位的。
|
如图:
五、跑马灯的栗子
我们用上面的知识,来写一个跑马灯示例,这个我们经常会用到,特别我们在某个网站上看到欢迎***来莅临指导,然后这个字返回出现,那这个是怎么做的呐?我们就来写一个。
搞栗子开始:
1、利用字符串获取标签内容,及重现赋值。
2、利用定时器循环这个 操作
1 <!DOCTYPE html>
2 <html>
3 <head lang="en">
4 <meta charset="UTF-8">
5 <title></title>
6 </head>
7 <body>
8 <div id="i1">热了欢迎牛逼人物莅临指导</div>
9
10 <script>
11 function func(){
12 // 获取指定标签内容
13 var tag = document.getElementById("i1");
14 // 获取标签内的内容
15 var content= tag.innerText;
16
17 var f= content.charAt(0);
18 var l =content.substring(1,content.length);
19
20 var new_content = l +f;
21
22 tag.innerText = new_content;
23
24 }
25 setInterval('func();',1000)
26 </script>
27
28 </body>
29 </html>