20141128—JavaScript对象
JavaScript 中的所有事物都是对象:字符串、数值、数组、函数...
String 对象的 length 属性来获得字符串的长度:
var message="Hello World!";
var x=message.length
;
一、JavaScript 类
JavaScript 是面向对象的语言,但 JavaScript 不使用类。
在 JavaScript 中,不会创建类,也不会通过类来创建对象(就像在其他面向对象的语言中那样)。
JavaScript 基于 prototype,而不是基于类的。
JavaScript for...in 循环
JavaScript for...in 语句循环遍历对象的属性。
<p>点击下面的按钮,循环遍历对象 "person" 的属性。</p> <button onclick="myFunction()">点击这里</button> <p id="demo"></p> <script> function myFunction() { var x; var txt=""; var person={fname:"一",lname:"二",age:3}; for (x in person) { txt=txt + person[x]; } document.getElementById("demo").innerHTML=txt; } </script>
二、Number 对象(数字对象)
JavaScript 只有一种数字类型。
JavaScript 数字
JavaScript 数字可以使用也可以不使用小数点来书写:
实例
var pi=3.14; // 使用小数点 var x=34; // 不使用小数点
极大或极小的数字可通过科学(指数)计数法来写:
实例
var y=123e5; // 12300000 var z=123e-5; // 0.00123
所有 JavaScript 数字均为 64 位
精度
整数(不使用小数点或指数计数法)最多为 15 位。
小数的最大位数是 17,但是浮点运算并不总是 100% 准确:
八进制和十六进制
如果前缀为 0,则 JavaScript 会把数值常量解释为八进制数,如果前缀为 0 和 "x",则解释为十六进制数。
提示:绝不要在数字前面写零,除非您需要进行八进制转换。
三、字符串(String)对象
使用 indexOf() 来定位字符串中某一个指定的字符首次出现的位置。
<script type="text/javascript"> var str="Hello world!" document.write(str.indexOf("Hello") + "<br />") document.write(str.indexOf("World") + "<br />") document.write(str.indexOf("world")) </script>
2)match() 方法使用 match() 来查找字符串中特定的字符,并且如果找到的话,则返回这个字符。
<script type="text/javascript"> var str="Hello world!" document.write(str.match("world") + "<br />") document.write(str.match("World") + "<br />") document.write(str.match("worlld") + "<br />") document.write(str.match("world!")) </script>
使用 replace() 方法在字符串中用某些字符替换另一些字符。
<script> var str="tupian1 jpg1" document.write(str.replace("jpg1","png1")) </script>
另外,这些方法可以定义一个变量来接受他们,然后打印。
四、Date(日期)对象
Date() 获得当日的日期:
document.write(Date());
操作日期
通过使用针对日期对象的方法,我们可以很容易地对日期进行操作。
<script> var myDate=new Date() myDate.setFullYear(2008,7,9) document.write(myDate) </script>
注意:表示月份的参数介于 0 到 11 之间。也就是说,如果希望把月设置为 8 月,则参数应该是 7。
五、Array(数组)对象
定义一个数组,并给它赋值。
var mycars=new Array() mycars[0]="Saab" mycars[1]="Volvo" mycars[2]="BMW"
使用 for...in 声明来循环输出数组中的元素。
<script type="text/javascript"> var x var mycars = new Array() mycars[0] = "Saab" mycars[1] = "Volvo" mycars[2] = "BMW" for (x in mycars) { document.write(mycars[x] + "<br />") } </script>
六、Math(算数)对象
1)random()
使用 random() 来返回 0 到 1 之间的随机数。
<script type="text/javascript">
document.write(Math.random())
</script>
1-100内的数, 乘以100 就可以。
2) max() 和 min()
max()
返回两个给定的数中的较大的数
<script type="text/javascript"> document.write(Math.max(5,7) + "<br />") document.write(Math.max(-3,5) + "<br />") document.write(Math.max(-3,-5) + "<br />") document.write(Math.max(7.25,7.30)) </script>
min()
返回两个给定的数中的较小的数(同max())
七、RegExp 对象(正则表达式)
RegExp 是正则表达式的缩写。
当您检索某个文本时,可以使用一种模式来描述要检索的内容。RegExp 就是这种模式。
简单的模式可以是一个单独的字符。
更复杂的模式包括了更多的字符,并可用于解析、格式检查、替换等等。
您可以规定字符串中的检索位置,以及要检索的字符类型,等等。
定义 RegExp
RegExp 对象用于存储检索模式。
通过 new 关键词来定义 RegExp 对象。以下代码定义了名为 patt1 的 RegExp 对象,其模式是 "e":
var patt1=new RegExp("e");
RegExp 对象的方法
RegExp 对象有 3 个方法:test()、exec() 以及 compile()。
表达式参考网址:
http://msdn.microsoft.com/zh-cn/library/ae5bf541(v=vs.90).aspx