在学习完了基本的内容之后,我们来学习一下JavaScript中的对象部分以及如何自定义对象的问题。
String对象
创建字符串的方式共有两种:
- 方式1:new String(“内容”);
- 方式2:var str = “内容”;
我们来看下面的代码解决问题:
var str1 = new String("hello");
var str2 = new String("hello");
问题:str1和str2两个字符串对象一样吗?
如果直接比较str1和str2这两个对象,肯定是不一样的,如果将这两个字符串对象直接转换成字符串,那么就是相同的了,用到的方法是toString
document.write("两个字符串对象是否相同呢?"+(str1.toString()==str2.toString()));
此时,输出的值就是true了。
下面来介绍一下字符串对象常用的方法:
//anchor(参数) 生产锚点,自动为该内容生成一个<a>标签,标签名称就是传入的参数
document.write("第五章".anchor("five")+"<br/>");
//blink() 为元素添加blink标签(闪烁标签),很多浏览器已经不再支持
document.write("第五章".blink()+"<br/>");
//charAt() 返回指定索引位置处的字符
document.write("abc".charAt(1)+"<br/>");
//charCodeAt() 回一个整数,代表指定位置上字符的 Unicode 编码
document.write("abc".charCodeAt(1)+"<br/>")
//fontcolor() 把带有 COLOR 属性的一个 HTML <FONT> 标记放置在 String 对象中的文本两端
document.write("第六章".fontcolor("red")+"<br/>")
//indexOf() 返回 String 对象内第一次出现子字符串的字符位置
document.write("abchellohehehello".indexOf("hello")+"<br/>")
//italics() 把 HTML <I> 标记放置在 String 对象中的文本两端
document.write("第五章".italics()+"<br/>")
//link() 把一个有 HREF 属性的 HTML 锚点放置在 String 对象中的文本两端
document.write("百度".link("http://www.baidu.com")+"<br/>")
//replace() 返回根据正则表达式进行文字替换后的字符串的复制
document.write("xml".replace("xml","DOM编程")+"<br/>")
//split() 切割
var str = "我-是-谁";
var arr = str.split("-");
//Substr() 截取子串
//toUpperCase() 转大写
//toLowerCase 转小写
Date对象
用实际代码作为介绍是最简单的方法:
<script type="text/javascript">
/*
日期对象(Date)
*/
var date = new Date(); //获取到当前的系统时间
document.write("年:"+ date.getFullYear()+"<br/>");//getYear输出的是与1990年的一个时间差,一般不用
document.write("月:"+ (date.getMonth()+1)+"<br/>");//注意加一,因为老外算月份是从0开始的
document.write("日:"+ date.getDate()+"<br/>");
document.write("时:"+ date.getHours()+"<br/>");
document.write("分:"+ date.getMinutes()+"<br/>");
document.write("秒:"+ date.getSeconds()+"<br/>");
//xxxx年yy月dd日 hh:mm:ss
//document.write("当前时间是:"+date.toLocaleString());
document.write("当前时间是:"+date.getFullYear()+"年"+(date.getMonth()+1)+"月"+date.getDate()+"日 "+
date.getHours()+":"+date.getMinutes()+":"+date.getSeconds());
</script>
输出结果是:
年:2018
月:2
日:24
时:19
分:33
秒:34
当前时间是:2018年2月24日 19:33:34
需求:编写一个函数,显示当前时间
<script type="text/javascript">
function getCurrentTime(){
var date = new Date();
//0.获取当前的系统时间
var timeInfo = date.getFullYear()+"年"+(date.getMonth()+1)+"月"+date.getDate()+"日 "+
date.getHours()+":"+date.getMinutes()+":"+date.getSeconds();
//1.找到span标签time对象
var spanObj = document.getElementById("time");
//2.设置span标签体的内容
spanObj.innerHTML = timeInfo.fontcolor("red");
}
getCurrentTime();
<script/>
为了实现动态显示时间。我们可以将getCurrentTime();替换成如下代码:
window.setInterval("getCurrentTime()",1000);//定时方法,第一个参数要指定调用的代码,第二参数是每隔指定的毫秒数调用指定的代码,注意要将代码写成字符串的形式
ok,本讲结束。