网站建设学习(十)——JavaScript基础语法(下)

 

       上一篇介绍js的内置对象以及常用方法,这一篇主要介绍JavaScript的正则匹配,一些全局函数以及自定义对象及方法的使用,同时也介绍了如何向默认对象中添加自定义方法。在执行本篇代码前需要在html同一路径下建立一个js自定义对象.js文件。

html:

<html>
<!--  标签html:内部包含整个HTML页面,所有的设计均在当前的html标签内部进行-->
    <head>
    <!--整个文件的头部,里面包括一些属性供浏览器识别解析,对用户不可见-->

        <title>标题</title>
        <!--标签title,说明整个页面的标题,最终显示在浏览器加载页面的标签页-->

        <meta http-equiv="content-type" content="text/html;charset=utf-8"/>
        <!--告诉浏览器以utf-8的码表进行解码,防止中文乱码,meta标签是无标签体标签,结束在开始标签后加反斜杠,即空标签-->

        <meta name="keywords" content="html,展示"/>
        <!--展示此网页的关键词,供搜索引擎使用,以“,”分开,其中关键词个数为权重,越多权重越低,一般为3到5个-->

        <meta name="description" content="html编程学习"/>
        <!--网页描述,展示在搜索引擎的网页的索引页面-->

        <!--<script src="js基础语言.js"></script>-->
        <script src="js自定义对象.js"></script>
        <!--引入js文件-->

    </head>


    <body>
    <!--整个文件的体,设计元素在这个部分中,最终展示给用户-->

    </body>
</html>

js自定义对象.js:

//RegExp正则对象
//正则匹配大家都不陌生,这里以注释的形式说明js的正则规则
/*
var pat = new RegExp(pattern,attributes);
attributes = 'i'//不区分大小写
attributes = 'g'//全局匹配
attributes = 'm'//多行匹配

result = pat.exec(str)//返回找到的数组

pattern = "[]";//查找方括号内的字符
pattern = "[^]"//查找不在方括号内的字符
pattern = "[0-9]"//查找0-9
pattern = "[a-z]"//查找小写a到小写z
pattern = "[A-z]"//查找大写A到小写z
pattern = "(|)"//查找或,任何选项

pattern = "."//查找单个字符,除了换行符和行结束符
pattern = "\w"//查找单词字符
pattern = "\W"//查找非单词字符
pattern = "\d"//查找数字字符
pattern = "\D"//查找非数字字符
pattern = "\s"//查找空白字符
pattern = "\S"//查找非空白字符
pattern = "\b"//匹配单词边界
pattern = "\B"//匹配非单词边界
pattern = "\n"//匹配换行符
pattern = "\f"//匹配换页符
pattern = "\r"//匹配回车符
pattern = "\t"//匹配制表符

pattern = "n+"//匹配任何一个包含至少一个n的字符串
pattern = "n*"//匹配任何包含零个或者多个n的字符串
pattern = "n?"//匹配任何包含零个或者一个n的字符串
pattern = "n{X,}"//匹配任何包含至少X个n的序列的字符串
pattern = "n$"//匹配任何以n为结尾的字符串
pattern = "^n"//匹配任何以n为开头的字符串
pattern = "?=n"//匹配任何其后紧跟n的字符串
pattern = "?!n"//匹配任何其后没有紧跟n的字符串

patt = "";
patt.compile(patt)编译正则表达式
*/


//全局函数
document.write(encodeURI("http://www.baidu.com/test test")+"<br/>");//把字符串编码成URI,同时不会对ASCII字母和数字进行编码
//decodeURI(),解码某个编码的URI
document.write(encodeURIComponent("http://www.baidu.com/test test")+"<br/>");//不会识别URI,而是将符号也进行编码
document.write(escape("?!=()#%&")+"<br/>");//对字符串进行编码,可以在所有计算机进行取读
//unescape(),对字符串进行解码
document.write(eval("var x=1;var y=2;document.write(x+y)")+"<br/>");//计算js字符串,并将其作为脚本进行执行
document.write(isFinite(1)+"<br/>");//判断数字是否为有穷大
document.write(isNaN("abc")+"<br/>");//判断值是否为非法数字


//自定义属性
//方式一,直接定义对象,有参数的定义方式
function Person_one(name , age){
    this.name = name;
    this.age = age;
    this.obj = function(){
        alert("obj");
    }//定义使用方法
}

var people = new Person_one("你好",25);//初始化对象

document.write(people.name+"<br/>");
document.write(people.age+"<br/>");
people.obj();//调用对象内定义的方法

for (var i in people){
    document.write(people[i]+"<br/>");
}//for-in输出对象形式

//方式二,无参数的定义方式
function Person_two(){
}

var people = new Person_two();
people.name = "哈喽";
people.age = 20;//可以先构造对象,然后向里面添加属性和值,java里不支持

document.write(people.name+"<br/>");
document.write(people.age+"<br/>");

//方式三,使用object对象
var people = new Object();
people.name = "再见";
people.age = 22;//可以不构造对象,使用默认的object对象,然后向里面添加属性和值,java里不支持

document.write(people.name+"<br/>");
document.write(people.age+"<br/>");

//方式四,使用自变量形式创建对象
var people = {
    "name":"奈斯",//非最后元素以逗号分隔
    "age":"30"
};//这种定义对象方式连object对象都不使用,直接使用大括号以键值对的形式给出

document.write(people.name+"<br/>");
document.write(people.age+"<br/>");


//给内置对象扩展自定义对象方法
//使用原型属性向内置对象添加方法(prototype),添加的方法可以像内置对象方法进行使用
Array.prototype.show = function(){
    alert("默认的array添加了自定义方法");
}

var ary = new Array(1,2,3,4,5);
ary.show();//使用添加的方法

JavaScript参考手册链接:JavaScript参考手册

       这其中有不合适或者不正确的地方欢迎指正,我的QQ号码:2867221444(乔金明),谢谢,也可以相互交流下,备注信息随意,只要能看得出是开发者或者学习者即可。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值