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

js常用对象

2017-08-09 18:32 155 查看
字符串
定义:定义一个变量,然后直接将字符串赋值给它。

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("不规范");

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息