Day02
JavaScript
1. JavaScript的简介
(1) JavaScript: 基于对象和事件驱动的语言,应用于客户端。
a) 基于对象:js里面提供好了一些对象,直接使用
b) 事件驱动:每次滑动鼠标,变换一张图片
c) 客户端:浏览器
(2) JavaScript的特点
a) 交互性
b) 安全性
c) 跨平台性
(3) Java和JavaScript区别
|
|
Java |
JavaScript |
|
公司 |
Sun公司 |
网景公司 |
|
|
面向对象 |
基于对象 |
|
跨平台机制 |
依靠虚拟机 |
浏览器支持 |
|
|
强类型语言 |
弱类型语言 |
|
实现机制 |
先编译通过虚拟机运行 |
支持的浏览器直接打开 |
(4) JavaScript由三部分组成
a) ECMAScript
ECMA组织制定语句,语法
b) BOM
broswerobject model:浏览器对象模型
c) DOM
document object model:文档对象模型
2.js和html的结合方式
|
方式 |
使用html中的标签 |
使用html的标签,引入外部的js文件 |
|
代码 |
<script type="text/javascript"> js代码 </script> |
<script type="text/javascript" src="js文件的路径"></script> |
|
|
js的注释: 单行注释 多行注释 |
注意: 不要在script标签里面写js代码了,不会执行 结束script标签 </script>,不要在标签内结束 |
3.js的变量声明和数据类型
(1) 声明变量,都是使用一个关键字var
(2) js的原始类型
|
类型 |
string:字符串类型 |
number:数字类型 |
boolean:布尔类型 |
null |
undefined |
|
使用 |
var a = "abc" |
var b = 10 |
var c = true |
Var date = null |
var a |
|
|
|
|
|
null是特殊的引用类型 |
表示定义了一个变量,但是没有赋值 |
(3) typeof(变量的名称): 查看当前变量的类型
4. js的引用类型和类型转换
(1)引用对象
a)Object 对象:所有对象都由这个对象继承而来
b)Boolean 对象:Boolean 原始类型的引用类型
c)Number 对象: Number 原始类型的引用类型
(2)类型转换
a)转换成字符串toString()
b)转换成数字:parseInt() 和 parseFloat()
c)强制类型转换:
Boolean(value)- 把给定的值转换成 Boolean 型;
Number(value)- 把给定的值转换成数字(可以是整数或浮点数);
String(value)- 把给定的值转换成字符串;
5.js的语句
|
语句 |
if 语句 |
switch语句 |
while循环语句 |
for循环语句 |
document.write()向页面输出内容 |
|
代码 |
var a = 10; if(a==10) { alert("10"); } else { alert("other"); } |
var b = 5; switch(b) { case 4: alert("4"); break; case 5: alert("5"); break; default: alert("other"); } |
var i = 4; while(i<6) { alert(i); i++; } |
for(var i=0;i<3;i++) { alert(i); } |
document.write(i); document.write("<br/>") |
6.js的运算符
|
运算符 |
算术运算符 |
赋值运算符 |
比较运算符 |
逻辑运算符 |
|
|
+ - * /.... |
+= |
== |
&& || ! |
js的运算符和java不同的内容
a) js里面不区分整数和小数
b) 字符串相加是字符串的拼接操作,字符串相减是真正的相减运算,如果字符串不是数字提示NaN
c) 如果布尔类型值是true,把类型当成1运算;如果布尔类型值是false,把类型当成0运算
d) ==比较的是值, === 比较的是值和类型
7. js的数组
js里面定义数组的方式
|
方式 |
var arr1 = [] |
var arr2 = ["10",10,true] |
var arr3 = new Array(3) |
var arr4 = new Array(4,5,6) |
|
|
|
可以写任意的类型 |
表示定义数组名称是arr3,数组的长度是3 |
表示定义数组名称是arr4,数组里面的值4 5 6 |
数组里面的属性:查看数组的长度 length, 长度可变的
8. js的string对象
(1)字符串对象
创建字符串:var a ="abc"; var b = new String("bb");
(2)属性 length 字符串的长度
(3)方法:
|
与html相关的方法 |
bold() |
fontcolor() |
fontsize() |
link() |
|
作用 |
使用粗体显示字符串 |
使用指定的颜色来显示字符串 |
使用指定的尺寸来显示字符串 |
将字符串显示为链接 |
|
代码 |
document.write(a.bold()) |
document.write(a.fontcolor("red")) |
document.write(a.fontsize(7)) |
document.write(a.link("04-练习99乘法表.html")) |
|
与java相似的方法 |
作用 |
代码 |
|
charAt() |
返回在指定位置的字符。 如果位置不存在字符,返回空字符串"" |
var str = "abcdefg" document.write(str.charAt(1))
|
|
concat() |
连接字符串 |
document.write(str.concat(str1)) |
|
indexOf() |
检索字符串,得到检索的字符的位置,如果没有找到返回-1 |
var str2 = "ABCD"; document.write(str2.indexOf("R")); |
|
split() |
把字符串分割为字符串数组 |
var str3 = "a-b-c"; var arr = str3.split("-"); |
|
substr() |
从起始索引号提取字符串中指定数目的字符 |
var str4 = "MARYJACKLUCY"; document.write(str4.substr(2,3)); |
|
substring() |
提取字符串中两个指定的索引号之间的字符 |
document.write(str4.substring(2,3)) |
9. js的Array对象
方法:
|
方法 |
作用 |
代码 |
|
concat() |
连接数组 |
document.write(arr1.concat(arr2)) |
|
join() |
把数组根据指定字符进行分隔 |
document.write(arr3.join("-")) |
|
pop() |
删除并返回数组的最后一个元素 |
document.write(arr4.pop()) |
|
push() |
向数组的末尾添加元素,并返回新的长度 |
document.write(arr5.push("lucy")) |
|
reverse() |
颠倒数组中元素的顺序 |
document.write(arr8.reverse()) |
10. js的Math对象
(1) 使用Math.方法名称进行调用
(2) 方法
|
方法 |
作用 |
代码 |
|
ceil(x) |
对一个数进行上舍入(天花板) |
document.write(Math.ceil(10.2)) |
|
floor(x) |
对一个数进行下舍入(地板) |
document.write(Math.floor(10.2)) |
|
round(x) |
把一个数四舍五入为最接近的整数 |
document.write(Math.round(10.2)) |
|
random() |
返回 0 ~ 1 之间的随机数 |
document.write(Math.random()) |
11. js的Date对象
(1)使用Date对象,newDate();
(2)方法
|
方法 |
作用 |
注意 |
|
toLocaleString() |
得到当前的时间 |
把 Date 对象转换为字符串 |
|
getFullYear() |
得到当前的年 |
Date对象以四位数字返回年份 |
|
getMonth() |
得到当前的月 |
Date 对象返回月份 (0 ~ 11) |
|
getDay() |
得到当前的星期 |
从 Date 对象返回一周中的某一天 (0 ~ 6) 星期日返回的是0 |
|
getDate() |
得到当前的日 |
返回一个月中的某一天 (1 ~ 31) |
|
getHours() |
得到当前的小时 |
|
|
getMinutes() |
得到当前的分 |
|
|
getSeconds() |
得到当前的秒 |
|
|
getTime() |
得到毫秒数 |
返回 1970 年 1 月 1 日至今的毫秒数 |
12. js的RegRxp对象
(1) RegExp 对象表示正则表达式
(2)使用new RegExp("正则表达式")
/正则表达式/
(3)方法
test() 检索字符串中指定的值。如果存在匹配的字符返回 true,如果不存在匹配的字符返回 false。
13. js的bom对象
(1) script标签放到</body>后面
(2) bom:浏览器对象模型
第一个:navigator浏览器的信息
第二个:screen屏幕的信息
第三个: history访问地址的历史信息
第四个: location
设置url
href设置或返回完整的 URL
第五个: window(***)
window对象是窗口对象,是顶层对象
方法:
setInterval("执行的js代码",毫秒数) 在指定的时间内,重复执行js代码
**有两个参数(必需2个都要有)
***第一个参数要执行的js代码(js的方法),第二个参数是时间(毫秒数)
**代码
setInterval("alert('setinterval');",3000);
setTimeout("执行的js代码",毫秒数) 在指定的时间之后,执行js代码,执行一次
**有两个参数
***第一个参数要执行js代码(js的方法),第二个参数是时间(毫秒数)
**代码
setTimeout("alert('settimeout');",3000);
clearInterval(id) 取消由setInterval() 设置的 timeout。
clearTimeout(id) 取消由setTimeout()方法设置的 timeout。
14. js的全局变量和局部变量
(1) 全局变量
在js里面,如果在一个script标签里面定义变量,在页面中的其他script标签里面都可以使用。(要注意上下顺序)
(2) 局部变量
在js的方法里面定义一个变量,这个变量只能在方法里面使用。
15. js的全局函数
(1) 不属于任何对象,可以使函数
(2) 主要的函数:
|
函数 |
作用 |
注意 |
|
eval() |
把字符串当成js代码执行 |
|
|
isNaN() |
检查某个值是否是数字 |
如果是数字返回 false,如果不是一个数字返回 true。 |
|
parseInt() |
解析一个字符串并返回一个整数 |
|
|
encodeURI() |
把字符串编码为 URI |
|
|
decodeURI() |
解码某个编码的 URI |
|
本文介绍了JavaScript的基础知识,包括其特点、组成、与HTML的结合方式、变量声明、数据类型、语句、运算符等内容,帮助初学者快速掌握JavaScript的核心概念。
2371

被折叠的 条评论
为什么被折叠?



