JS学习笔记(三) 对象
参考资料:
1. http://www.w3school.com.cn/js/js_objects.asp
☂ 知识点:
☞ Javascript中的所有事物都是对象。
☞ Javascript是基于prototype,而不是基于类的。
☞ Javascript是面向对象的语言,但Javascript不使用类。因此,在Javascript中,不会创建类,也不会通过类来创建对象。
☞ Javascript中的所有数字都存储为根为10的64位的浮点数。其中,整数最多为15位,小数最大位数为17,且浮点运算并不总是100%准确的。
☞ Javascript中如果数字的前缀为0,则该数值为八进制数。如果前缀为0x,则该数值为十六进制数。
☞ 完整的Number数值对象参考手册:http://www.w3school.com.cn/jsref/jsref_obj_number.asp。
- 创建Javascript对象
<script> person=new Object(); person.firstname="Bill"; person.lastname="Gates"; person.age=56; person.eyecolor="blue";
document.write(person.firstname + " is " + person.age + " years old."); </script>
<script> person={firstname:"Bill",lastname:"gates",age:56,eyecolor:"blue"} document.write(person.firstname + " is " + person.age + " years old."); </script>
<script> function person(firstname,lastname,age,eyecolor) { this.firstname=firstname; this.lastname=lastname; this.age=age; this.eyecolor=eyecolor; }
// 使用对象构造器 myFather=new person("Bill","Gates",56,"blue"); document.write(myFather.firstname + " is " + myFather.age + " years old."); </script>
- 算数
document.write(Math.round(4.7)) //四舍五入,输出5 document.write(Math.random()) //0和1之间的随机数 document.write(Math.floor(Math.random()*11)) //0和10之间的随机整数
更多Math对象使用方法:http://www.w3school.com.cn/jsref/jsref_obj_math.asp。
- 日期
1. 获取当日的日期和时间。
document.write(Date())
结果:
2. 获取从1970到1月1日至今的毫秒数。
document.write((new Date()).getTime());
结果:
3. 设置具体日期。
var d = new Date() d.setFullYear(2015,10,1)// 月份是从0到11 document.write(d)
结果:
4. 将当前日期根据UTC转换为字符串。
document.write (new Date().toUTCString())
结果:
5. 显示星期几。
var d=new Date() var weekday=new Array(7) weekday[0]="星期日" weekday[1]="星期一" weekday[2]="星期二" weekday[3]="星期三" weekday[4]="星期四" weekday[5]="星期五" weekday[6]="星期六" document.write("今天是" + weekday[d.getDay()])
结果:
6. 比较日期
var myDate=new Date(); myDate.setFullYear(2008,8,9); var today = new Date(); if (myDate>today) { alert("Today is before 9th August 2008"); } else { alert("Today is after 9th August 2008"); }
7. 显示数字时钟
<html> <head> <script type="text/javascript"> function startTime() { var today=new Date() var h=today.getHours() var m=today.getMinutes() var s=today.getSeconds() // add a zero in front of numbers<10 m=checkTime(m) s=checkTime(s) document.getElementById('txt').innerHTML=h+":"+m+":"+s t=setTimeout('startTime()',500) } function checkTime(i) { if (i<10) {
i="0" + i
}
return i } </script> </head> <body onload="startTime()"> <div id="txt"></div> </body> </html>
结果:
更多日期对象Date使用方法:http://www.w3school.com.cn/jsref/jsref_obj_date.asp。
- 字符串
var str="Hello world!" document.write(str.length + "<br />") document.write(str.toUpperCase() + "<br />") document.write(str.indexOf("Hello") + "<br />") document.write(str.match("world") + "<br />") document.write(str.match("World") + "<br />") document.write(str.replace(/world/,"everyone"))
结果:
更多字符串对象String的使用方法:http://www.w3school.com.cn/jsref/jsref_obj_string.asp。