js常用对象

字符串

定义:定义一个变量,然后直接将字符串赋值给它。

var str ="abc123";

字符串实际上是字符组成的数组,所以数组的方法它基本都有。

(1)访问字符串里面的字符:

a.数组方式:str[i];

b.字符串特有的方式:charAt(i)。

(2)查找

a. 数组方式:indexof

b. 字符串方式:search()方法:传入参数(要搜索的子串),返回子串的第一个字符在父串的下标。这个方法对大小写敏感。

search方法的功能比indexof更强大,它可以使用正则表达式形式来查找。

(3)取子串

a. 数组方式:slice();

b. 字符串特有的方法;

substr(start,length);传入参数(第一个参数,开始截取的下标,如果没有第二个参数,它就一直取到最后)(第二个参数,截取的长度)

substring(start,end)传入两个参数,第一个参数,开始截取的下标,第二个参数,截取结束的下标。

(4)替换

数组方式:splice

字符串方式:replace()替换,传入的参数(第一个参数被替换的子串)(第二个参数是新的子串)

var str= "hello world";
   
str= str.replace("world","china");
alert(str);
 

toUpperCase():小写字母转化为大写字母

var str= prompt("请输入一个英文字符串"); //abc
str = str.toUpperCase();
alert(str); //ABC

toLowerCase():大写转化为小写。

var str= prompt("请输入一个英文字符串"); //ABC
str = str.toLowerCase();
alert(str); //abc

trim()方法:去除字符串首尾的空格符

var str= "               请输入一个英文字符串              ";
str =str.trim();
alert(str);

split(x):字符串的分割。用字符串“x”进行分割。分割之后是一个数组.

数组有一个toString方法,将数组转换成字符串,元素之间用逗号隔开

var a= "a b c";
var result= a.split(" ");
alert(result);//["a","b","c"]

日期

定义:

//var d = new Date();
var d= new Date(2017,3,22,8,30,22);

不给参数,定义的日期为执行这条指令时那一刻的系统日期。

当然也可以指定年月日时分秒参数,但是要特别注意的是月从0开始,即0表示1月

修改日期分量:

setYear、setMonth、setDate……

获取日期分量

getYear、getMonth

getMilliseconds是获取毫秒分量

getTime获取的是从1970-1-1 00:00:00至指定日期所经历的毫秒数。

日期转换成字符串

var d= new Date(2017,3,22,8,30,22,500);
document.write(d.toString()+"<br>");
document.write(d.toDateString()+"<br>");
document.write(d.toTimeString()+"<br>");
document.write(d.toLocaleDateString()+"<br>");
document.write(d.toLocaleTimeString()+"<br>");
document.write(d.toUTCString()+"<br>");

日期运算

 d1>d2

d1-d2:两个日期相隔的毫秒数

便捷计算某月天数的方法

var month= 2;
var d = newDate(2017,month,0);
document.write(d.getDate()+"<br>");

正则表达式

定义规则:1使用/规则/修饰符

var patt= /hellocooldog/i;

          2 创建一个RegExp对象,给两个参数分别为规则和修饰符

var patt1 = new RegExp("hello","i");

为什么要有正则表达式?

      因为查找是一个比较复杂的东西,我们更加准确快速找到自己想要的

什么是正则表达式?

      他可以定义一种字符串逻辑的公式,来和要查找的字符串

常用的修饰符:

i,不区分大小写

g,全局匹配,找到一个不停止,一直找完。

var str ="hellocooldog";

var patt2=/o/g;
var result= str.replace(patt2,"O");
document.write(result);

[]找到括号里的任意一个,返回一个数组类型
[0-9],匹配0-9的任意数字
[a-z],匹配小写的a-z
[A-Z],匹配大写的A-Z

var str="1H2e3l4l5o6C7o8o9lDog";
var patt = /[0-9]/g;
var result= str.match(patt);
document.write(result);

输出:12456789

 

var str="1H2e3l4l5o6C7o8o9lDog";
var patt = /[a-z]/ig;
var result= str.match(patt);
document.write(result);

| 或,([a-z]|[A-Z]),匹配小写的a-z或者大写的A-Z

常用的元字符:

\w,word的缩写,单词字符,包括字母,下划线,数字

var str="_H1e2lloCoolDog";
var patt = /\w/g;//word
var result= str.match(patt);
document.write(result);

 

\s,空格space,

\d,数字digital

量词:

+,找到一个或多个

var patt= /n+/g;

*,匹配0个或多个

var patt1=/oo*/g;

?,匹配0个或者1个

var patt2=/oo?/g;

{n},指定具体的个数,如果没有找到返回null

var patt= /o{3}/g;

最少两个最多3个

var patt1= /o{2,3}/g;

最少两个

var patt1= /o{2,}/g;

^,必须以什么什么开头

%,必须以什么结束

//请输入一个不少于6位不多于18位的密码,只能输入字母数字和下划线,字母开头

var password= prompt("请输入密码:");
var patt =/([a-z]|[A-Z])\w{5,17}/;
var result=password.match(patt);
document.write(result);

 

RegExp常用的两种方法:

exec(),返回的是找到符合正则表达式新的字符串

var str="good afternoon"
var patt = /\w+/g;
var result= patt.exec(str);
document.write(result);

test():满足表达式时返回true,不满足返回false

var password= prompt("请输入密码:");
var patt= /([a-z]|[A-Z])\w{5,17}/;
if(patt.test(password)){
    alert("规范");
}else{
    alert("不规范");
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值