首页 > 代码库 > JavaScript(2)
JavaScript(2)
String、Array、Date、Math(前面4个只要能看文档写出来就可以)、全局函数、重载、bom、dom、document对象
1、js的String对象
创建String对象 var str =“abc”;
方法和属性
属性 length:字符串的长度
常用方法
(1) 与html相关的方法
bold():加粗 比如str.bold()
fontcolor():设置字符串的颜色 比如str.fontcolor(“red”)
fontsize():设置字符串的大小 比如str.fontsize(1) 范围1-7
link():将字符串显示为超链接 比如str.link(“超链接的地址”)
sub():下标 sup():上标
(2) 与java相似的方法
concat():连接字符串 比如str.concat(str2)
charAt():返回指定位置的字符串 比如str.charAt(索引位置) 如果字符不存在,返回空字符串
indexOf():返回字符串的位置 比如var str =“abc” str.indexOf(“a”) 如果没有就返回-1
split():切割字符串变成数组
replace():替换字符串 比如str.replace(“原来的值”,“替换后的值”)
substr(): 比如str.sub(a,b)从第a位开始,向后截取b个字符
substring() 比如str.sunstring(c,d) 【c,d)
2、js的Array对象
创建数组 var arr=[a,b,c.. ];/ var arr = new Array{a,b,c..}; /var arr = new Array{3}; 数组长度为3
属性:length 数组的长度
方法 concat():数组的连接
join():使用指定的字符分割数组 比如str.join(“/”)
push():向数组的末尾添加元素,并返回数组的新长度 如果添加的是数组,那么就会把数组当成一个整体添加进去。
pop():删除最后一个元素,并返回被删除的那个元素
reverse():颠倒数组中的元素的顺序
3、js的Date对象
toLocaleString:把日期格式化,转换成当前格式
如var date = new Date();
date.toLocaleString()
getFullYear():得到当前的年
getMonth():得到当前的月(0-11) 所以后面要+1
getDay():返回这周的天(0-6) 星期天为0
getDay():返回当前的天
getHours():得到当前的小时
getMinutes():得到当前的分钟
getSeconds():得到当前的秒
getTime():1970年1月1日到至今的毫秒数 运用场景:使用毫秒数来处理缓存的效果
4、js的Math对象 里面都是静态方法,调用为Math.方法
ceil(x):向上舍入 Math.ceil()
floor(x):向下舍入
round(x):四舍五入
random():返回0-1的随机数
5、js的全局函数 由于不属于任何一个对象,直接写名称使用
eval():执行js代码
encodeURI():对字符进行编码
decodeURI():对字符进行解码
encodeURIComponent():对字符进行编码
decodeURIComponent():对字符进行解码 涵盖范围比较多
isNaN():判断当前字符串是否是数字 返回true和false 是数字返回false,不是数字返回true
parseInt():类型转换
6、函数的重载 方法名相同,参数不同
js里面是否存在重载(面试题)
(1) js里面不存在重载
(2) 但是可以通过其他方式来模拟重载的效果 aruguments数组模拟
7、js的bom对象
bom:broswer object model 浏览器对象模型
有哪些对象
(1)navigator:获取客户机的信息(浏览器的信息)
格式:navigator.appName 这个是直接获取浏览器的名称
document.write(navigator.appName);
(2)screen:获取屏幕的信息
直接输出 document.writr(screen.width); 获取屏幕的宽度
(3)location :请求url地址
href属性
a.获取到请求的url地址 document.write(location.href);
b.设置url地址
页面上设置一个按钮,按钮上绑定一个事件,当点击这个按钮,页面可以跳转到另外一个界面
代码:<input type = “button” value =http://www.mamicode.com/“跳转” onclick =“href1();”/>
function href1() {
location.href=http://www.mamicode.com/“hello.html”;
}
onclick =“js的方法;” 鼠标点击事件
(4)history:请求的url的历史记录
history.go(-1); 到上个页面
history.go(1); 到下个页面
(5) window 窗口对象、顶层对象 (所以的bom对象都是在window里面操作的) 最重要的
方法:
- window.alert() 简写成alert() 页面弹出一个框,显示内容
- confirm() 确认提示框
如var flag =window.confirm(“显示的内容”);
3.prompt():输入的对话框 很少用了
window.prompt(“要显示的内容”,“输入的默认值”);
4.open():表示可以打开一个新的窗口
open(“打开的新窗口的的资质”,“”,“窗口特征,比如宽度和高度”);
5.close():关闭窗口(浏览器兼容性比较差)
做定时器
f.setInterval(“js代码”,毫秒数) 1秒=1000毫秒
如 window.setInterval(“alert(‘123’);”,3000); 每3秒弹出123
g.setTimeout(“js代码”,毫秒数) 表示是在毫秒数之后执行,但是只会执行一次
如 window.setInterval(“alert(‘123’);”,3000);
h.clearInterval(id值):清除setInterval()
如 var id = window.setInterval(“alert(‘123’);”,3000);
clearInterval(id);
i.clearTimeout(id值):清除setTimeout()
如 var id2 = window.setInterval(“alert(‘123’);”,3000);
clearTimeout(id2);
8.js的dom对象
dom:document object model 文档对象模型
可以使用js里面的dom提供的对象的属性和方法对超文本文档进行操作
文档:超文本文档(超文本标记文档):html、xml
对象:提供了属性和方法
模型:使用属性和方法操作超文本文档
要想对标记型文档进行操作,需要解析标记型文档
根据html的层级结构,在内存中分配一个树形结构,需要把html中的每部分(标签、文本、属性)封装成对象。
document对象:整个文档
element对象:标签对象
属性对象:
文本对象
Node节点对象:这个对象是所有对象的父对象
如果在其他对象找不到想要的方法,这个时候到Node对象里面去找
DHTML:是很多技术的简称(html、css、dom、javascript(专门指的js的语法语句))
9、document对象 表示整个的文档
<input type= “text” name =“name1” value =http://www.mamicode.com/“aaaa”/> input是标签 text和value 是元素 name1和aaaa是属性值
常用方法
a.write() 向页面输出变量(值)/向页面输出html代码
比如 var str =“abc” document.write(str);
b.getElementById(“id值”):通过id得到元素(标签),需要返回值 一般这个用得最多,比较方便
c.getElementsByName():通过标签的name的属性值得到标签,返回的是一个集合(数组)。 所以要遍历数组得到每一个数组对象
d.getElementsByTagName(“标签名称”):通过标签名称得到元素,返回是一个数组。
注意: c和d由于返回的是一个数组,如果只有一个 ,那么如果要获取属性值,可以不用遍历,直接用数组下标获取
如 var inputs = document.getElementsByName(“nameid”)[0];
opener:属性,获取创建当前窗口的窗
JavaScript(2)