您的位置:首页 > Web前端 > JavaScript

javascript学习笔记[7]--内建对象

2013-02-01 16:31 183 查看
昨天晚上回了趟乡下,所以没时间写博客了,那今天继续吧,今天主要是学习了ECMAScript 5增强的对象模型, 以及一些javascript的内建对象,现在总结一下。先说明一下哦,我也是一只菜鸟啦,刚学没多久,大家一起探讨探讨,如果博客写的有问题的话,欢迎及时帮我指出。

7.1 ECMAScript 5 增强的对象模型

看完了,我不知道有些什么用,感觉讲的东西都是好理论的东西,实际应用的应该比较少吧。就拎一下重点:

ECMAScript 5 增强了对对象模型的控制力度,通过新的对象模型,用户可以控制单独的属性是否允许读取,写入,删除和枚举等,甚至可以控制对象是否允许添加或删除属性,这样就可以实现密封对象的功能。--------太文艺了,我这样的菜鸟目前肯定是用不到这么先进的东西的。

使用Object.defineProperty()定义属性,在定义属性时可以改变描述符的键值。语法如下:

Object.defineProperty(obj,prop,desc);

obj:对象,该参数指定为该类的原型对象

prop:字符串,用于指定属性名

desc:包含属性的描述

function Person(){}
Object.defineProperty(Person.prototype,
"name",
{
value:"tony",
//这些属性定义描述默认都是true
writeable:true,
enumerable:true,
configurable:true
});

//下面代码就可以得到属性值tony
var person = new Person();
document.write(person.name);


接下来可以一次定义多个属性,用Object.defineProperties()方法。Object.defineProperties(obj,props)

接下来介绍几个枚举属性,也就是略微提一下,有个印象,到时候要用的话现场查一下就行了。

Object.keys(obj),获取属性名,也就是上面代码的name。

Object.getOwnPropertyNames(obj),列出所有能枚举和不能枚举的属性,该方法不能实现向前兼容。

密封对象和动态对象,密封对象只能拥有在实例化时从类定义获取的固定的一组属性和方法,不能在运行时添加其他属性和方法,默认情况下,javascript创建的对象都是动态对象,即允许在运行时为对象添加其他属性和方法。具体怎么实现就不说了。反正这种方法要求比较高,都需要在use strict(执行严格模式)下才能看到,而目前只有firefox4支持。兼容性不行啦。

7.2 String类

还是介绍一些实际编程中经常用到的东西来的实在。

7.2.1 正则表达式语法

相信大家肯定看到过各种正则表达式,尤其是在验证的时候,但是总是不知道它具体什么意思,那这里就稍微普及一下。

javascript使用RegExp类来表示正则表达式,下面有三种创建方法以及一段最简单的匹配代码:

View Code

var myDate = new Date();  // 获取时间 Fri Feb 01 2013 16:01:15 GMT+0800 (中国标准时间)
var myYear = myDate.getFullYear();    //获取四位数年份2013
var myMonth = myDate.getMonth()+1;   //从0开始,所以需要加1 ,输出2
var myDay = myDate.getDate();        //返回Date对象的日期数,getDay返回星期数。输出1


然后么,自己重组一下日期格式就可以20130201,以这样的形式传回后台,传回数据库。

7.5 其他javascript内建类(核心对象)-Boolean,Number,Math,Function和Arguments类等

Boolean,Number都没什么好讲的啦,Math也就一些方法,就比方三角余弦,正弦,绝对值,计算平方根,计算自然对数,老实说,javascript的数字处理能力挺弱的,就知道一下就行了。

Function类有call(),apply()和bind()方法,call()方法一般都用"()"代替了。

Arguments类和arguments属性,Arguments类用来存储和访问函数的参数,它位于函数体内部,可以使用Function类的arguments属性对其进行访问。以前的代码有用到过arguments,挺好用的,arguments.length判断长度,arguments
获取参数

今天就写这么多吧,这几天有点事,博客更新就不定期了,预计接下来就开始bom和dom篇了。

以上全部都属个人原创,请大家转载的时候附上原创链接: http://www.cnblogs.com/tonylp
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: