博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
js对象
阅读量:6161 次
发布时间:2019-06-21

本文共 11756 字,大约阅读时间需要 39 分钟。

1.Array

2.String

3.Math

4.Date

5.RegExp

6.JSON

Array  数组

数组主要是用来存储一组数据的

创建数组:

1.使用Array构造函数

语法:new Array()

//创建一个保存颜色的数组var colors=new Array(3);var nums=new Array(1,3,6,9);console.log(colors);    //[]var cols=['red','yellow','green'];console.log(cols);    //['red','yellow','green']var infos=[6,'marry',true,{email:'mmarry@sohu.com'}];console.log(infos);复制代码

数组元素的读写

读取和设置值时,使用方括号[]并提供相应的索引,

说明:索引是从0开始的正整数

var cols=['red','yellow','green'];console.log(cols[1]);    // yellow复制代码

var colors=new Array(3);colors[0]='#f00';colors[1]='0f0';colors[2]='00f';console.log(colors);复制代码

数组长度

语法:array.length

功能:获取数组array的长度

返回值:number

说明:1.通过设置length可以从数组的末尾移除项或向数组中添加新项。

var arr=['a','b','c','d'];console.log(arr.length);    //4arr.length=3;console.log(arr);    //['a','b','c',]复制代码

//数组的遍历var arr=['a','b','c','d'];for(var i=0;i

数组的方法 ,栈方法

1.push()  //添加到数组的尾部

2.unshift()    //添加到数组的开头

3.pop()    //删除最后一个元素

4.shift()   //删除第一个元素

5.join() // 把数组转换成字符串(以一种形式连接)

6.reverse()   //用于颠倒数组中元素的顺序

7.sort()    //用于对数组的元素进行排序

8.concat()   //用于连接两个或多个数组

9.slice()   //从已有的数组中返回选定的元素

10.splice()  //删除从index处开始的零个或多个元素,也可插入、替换

11.indexOf()   //从数组的开头(位置0)开始向后查找

11.lastindexOf() //从数组的末尾开始向后查找

1.push()

语法:arrayObject.push(newele1,newele2,newele3,....neweX)

功能:把它的参数顺序添加到arrayObjgct的尾部

返回值:把指定的值添加到数组最后的新长度。

var colors=new Array("red","green");colors.push("blue","yellow");console.log(colors);复制代码

2.unshift() 

语法:arrayObject.unshift(newele1,newele2,newele3,....neweX)

功能:把它的参数顺序添加到arrayObjgct的开头

返回值:把指定的值添加到数组最后的新长度。

var nums=[2,7,8,6];var sizs=nums.unshift(99,66);console.log(size);    //6console.log(nums);    //[99,66,2,7,8,6]复制代码

3.pop() 

语法:arrayObject.pop()

功能:删除arrayObjgct的最后一个元素

返回值:被删除的那个元素。

var nums=[2,7,8,6];var n=nums.pop();console.log(n);    //6console.log(nums);    //[2,7,8]复制代码

4.shift() 

语法:arrayObject.shift()

功能:删除arrayObjgct的第一个元素

返回值:被删除的那个元素。

var nums=[2,7,8,6];var n=nums.shift();console.log(n);    //2console.log(nums);    //[7,8,6]复制代码

5.join()

语法:arrayObject.join(separator)

功能:用于把数组的所有元素放入一个字符串

返回值:字符串

var nums=[2,4,5];var str=nums.join();    console.log(str);  //2,4,5复制代码

var words=["border","left","color"];var wordstr=words.join("-");console.log(wordstr);    //border-left-color复制代码

6.reverse()

语法:arrayObject.reverse()

功能:用于颠倒数组中元素的顺序

返回值:数组

ar nums=[2,4,5];nums.reverse();console.log(nums);    //[5,4,2]复制代码

 

7.sort()

语法:arrayObject.sort()

功能:用于对数组的元素进行顺序

返回值:数组

说明:1.即使数组中的每一项都是数值,sort()方法比较的也是字符串。 2.sort()方法可以接收一个比较函数作为参数。

var arr=[9,23,15,88,12];console.log(arr.sort());  //[12,15,23,88,9]console.log(arr.sort(function(a,b){
return a-b})); //[9,12,15,23,88]复制代码

8.concat()

语法:arrayObject.concat(arrayX,arrayX,...,arrayX)

功能:用于连接两个或多个数组

返回值:数组

var arr1=['a','b','c'],    arr2=['d','e',1,3],    arr3;arr3=arr1.concat(arr2,['m',99,8]);console.log(arr3);复制代码

9.slice()

语法:arrayObject.slice(start , end)

功能:从已有的数组中返回选定的元素

参数:start(必需)规定从何处开始选取,如是负数,从数组尾部开始算起

         end(可选)规定从何处结束选取,是数组片段结束处的数组下标

说明:1.如没有指定end,切分的数组包含从start到数组结束的所有元素。2.如slice()方法的参数中有一个负数,则用数组长度加上该数来确定相应的位置。

返回值:数组

var colors=["red","green","blue","yellow","orange"];var newColors=colors.slice(1,3);console.log(newColors);    //["green","blue"]复制代码

var colors=["red","green","blue","yellow","orange"];var newColors=colors.slice(-2,4);    //3(数组长度+ -2),3console.log(newColors);    //["blue"]复制代码

//完成以下代码段,实现b数组对a数组的拷贝,方法越多越好var a=[1,'yew',3],    b;//1.数组遍历,pushb=[]for(var i=0;i

10.splice()

语法:删除:arrayObject.splice(index , count) 

         插入:arrayObject.splice(index , 0,item1,...itemX)

功能:删除:从index处开始的零个或多个元素

         插入:在指定位置插入值

返回值:数组

说明:count是要删除的项目数量,如果设置为0,则不会删除项目。如果不设置,则删除从index开始的所有值。item1,...itemX是要插入的项

//删除的操作var arr=['a','b','c','d','e','f'];var delArr=arr.splice(2,2);console.log(arr);   //['a','b','e','f']console.log(delArr);    //['c','d']复制代码
//插入的操作var arr=['a','b','c','d','e','f'];var insertArr=arr.splice(3,0,'m','n');console.log(arr);   //['a','b','c','m','n','d','e','f']console.log(insertArr);    //[]复制代码

//插入的操作var arr=['a','b','c','d','e','f'];var replaceArr=arr.splice(1,2,'x','y','z');console.log(arr);   //['a','x','y','z','e','f']console.log(replaceArr);    //['b','c']复制代码

11.indexOf

语法:arrayObject.indexOf(searchvalue , startIndex)

功能:从数组的开头(位置0)开始向后查找

参数:searchvalue:必需,要查找的项,startIndex:可选,起点位置的索引。

返回值:number,查找的项在数组中的位置,没有找到的情况下返回-1

var nums=[1,7,5,7,8,1,6,9];var pos=nums.indexOf(7);  //检测第一个7的索引console.log(pos);    //1复制代码

var nums=[1,7,5,7,8,1,6,9];var pos=nums.indexOf(7,2);    //从索引为3开始检测7的索引console.log(pos);    //3复制代码

12.lastindexOf

语法:arrayObject.lastindexOf(searchvalue , startIndex)

功能:从数组的末尾开始向后查找

参数:searchvalue:必需,要查找的项,startIndex:可选,起点位置的索引。

返回值:number,查找的项在数组中的位置,没有找到的情况下返回-1

var nums=[1,7,5,7,8,1,6,9];var pos=nums.lastindexOf(1);    //从末尾开始检测1的索引console.log(pos);    //5复制代码

//封装一个方法实现indexOf的功能兼容低版本浏览器var nums=[1,7,5,7,8,1,6,9];    function ArrayIndexOf(arr,value){       for(var i=0;i

Sting 的方法

1.charAt()     //查看索引位置上的字符

2.charCodeAt()    //查看索引位置上的字符编码

3.indexOf()     //查看字符在字符串上的索引

4.lastIndexOf()  //从后往前查看字符在字符串上的索引

5.slice()   //截取子字符串

6.substring()  //语法及功能同slice()完全一样,截取子字符串,碰到负数转化为0

7.substr()   //截取子字符串

8.split()    //把一个字符串分割成字符串数组

9.replace()   //替换字符

10.toUpperCase()   //把字符串转为大写

11.toLowerCase()   把字符串转为小写

1.charAt()与

语法:stringObject.charAt(index)

功能:返回stringObject中index位置字符。

2.charCodeAt()

语法:stringObject.charCodeAt(index)

功能:返回stringObject中index位置字符的字符编码。

var str="hello world";console.log(str.charAt(4));    //oconsole.log(str.charCodeAt(4));    //111(o的编码)复制代码

3.indexOf()

语法:stringObject.indeOf("o")

功能:从一个字符串中搜索给定的子字符串,返回子字符串的位置

返回值:数值

说明:如果没有找到该子字符串,则返回-1

var email="marry@163.com";console.log(email.indexOf("@"));    //5console.log(email.indexOf("rr"));    //2复制代码

4.lastIndexOf() 

语法:stringObject.lastIndeOf("o")

功能:从一个字符串中搜索给定的子字符串,返回子字符串的位置

返回值:数值

说明:如果没有找到该子字符串,则返回-1

var email="marry.mailoo@163.com";console.log(email.lastIndexOf("o"));    //18console.log(email.lastIndexOf("."));    //16复制代码

5.slice()

语法:stringObject.slice(start,end)

功能:截取子字符串

说明:1.start:必需,指定子字符串的开始位置。2.end:可选,表示子字符串到哪里结束,end本身不在截取范围之内,省略时截取至字符串的末尾。

var str="hello world";console.log(str.slice(7,10));    //orlconsole.log(str.slice(-3));    //  字符串长度+ -3复制代码

6.substring()

说明:语法及功能同slice()完全一样。

区别在于:1.当参数为负数时,自动将参数转换为0,2.substring()会将较小的数作为开始位置,较大的数作为结束位置。

var str="hello world";console.log(str.substring(7,10));    //orlconsole.log(str.sunbstring(-7,5));    //  负数转化为0,hello复制代码

7.substr()

语法:stringObject.substr(start,len)

功能:截取子字符串

说明:1.start:必需,指定子字符串的开始位置。2.len:可选,表示截取的字符总数,省略截取到末尾。3.当start为负数时,会将传人的负值与字符串长度相加,4.当len为负数时,返回空字符串

var str="hello world";console.log(str.substr(6,3));    //worconsole.log(str.sunbstr(-5,4));    //字符串长度+ -5  worl  复制代码

//获取扩展名var url="http://baidu.com/index.txt";function getFileFormat(url){    //获取.在url中出现的位置    var pos=url.lastIndexOf(".")    return url.substr(pos);}var formatName = getFileFormat(url);var picFormat=getFileFormat("123324.jpg");console.log(formatName);console.log(picFormat);复制代码

8.split()

语法:stringObject.split(separator)

功能:把一个字符串分割成字符串数组。

返回值:Array

说明:separator:必需,分隔符

var str="welcome-to-beijing";var date="2016/05/05";//使用split将str转换为数组var arr = str.split('-');var dateArr = date.split("/");console.log(arr);    //['welcome','to','beijing']console.log(dateArr);    //['2016','05','05']复制代码

9.replace()

语法:stringObject.replace(regexp/substr,replacement)

功能:在字符串中用一些字符串替换另一些字符,或者替换一个与正则表达式匹配的子串。

返回值:String

参数:regexp:必需,规定子字符串或要替换的模式的RegExp对象。replacement:必需,一个字符串值。

var tel="010-1234678,400-100-9098,010-86768689";var newTel=tel.replace(','," ");console.log(newTel)复制代码

10.toUpperCase()

语法:stringObject.toUpperCase()

功能:把字符串转为大写

var str="hello world";console.log(str.toUpperCase());    //HELLO WORLD复制代码

11.toLowerCase()

语法:stringObject.toLowerrCase()

功能:把字符串转为小写

var str="hHELLO WORLD";console.log(str.toLowerCase());    //hello world复制代码
function camelback(str){    //通过-这个分隔符将str拆分成数组    var arr =str.split("-"),newStr=arr[0];    for(var i=1,len=arr.length;i

Math对象

1.min()    //求一组数中的最小值。

2.max()   //求一组数中的最大值。

3.ceil()    //向上取整

4.floor()   //向下取整

5.round()  //四舍五入取整

6.abs()   //返回绝对值

7.random()  //返回大于等于0小于1的一个随机数

1.Math.min()

语法:Math.min(num1,num2,...numN)

功能:求一组数中的最小值。

返回值:Number。

var min=Math.min(5,-4,0,9,108,-55);console.log(min);    //-55,(min中如果出现非数字就返回NaN)复制代码

2.Math.max()

语法:Math.max(num1,num2,...numN)

功能:求一组数中的最大值。

返回值:Number。

var max=Math.max(5,-4,0,9,108,-55);console.log(max);    //108,(min中如果出现非数字就返回NaN)复制代码

3.Math.ceil()

语法:Math.ceil(num)

功能:向上取整,即返回大于num的最小整数。

返回值:Number。

var num=Math.ceil(189.09);console.log(num);    //190复制代码

4.Math.floor()

语法:Math.floor(num)

功能:向下取整,返回num的整数部分。

返回值:Number。

var num=Math.floor(189.09);console.log(num);    //189复制代码

5.Math.round()

语法:Math.round(num)

功能:将数值四舍五入为最接近的整数

返回值:Number。

var num=Math.round(189.09);console.log(num);    //189复制代码

6.Math.abs()

语法:Math.abs(num)

功能:返回num的绝对值

返回值:Number。

var nums=-55;console.log(Math.abs(nums));    //55复制代码

7.Math.random()

语法:Math.random()

功能:返回大于等于0小于1的一个随机数

返回值:Number。

说明:求n到m之间的随机整数的公式:

random=Math.floor(Math.random()*(m-n+1)+n); 

var random=Math.random();console.log(random);复制代码

function getRandom(n,m){    var choise=m-n+1;    //随机整数的个数    return Math.floor(Math.random()*(m-n+1)+n); }var random1=getRandom(2,6);console.log(random1)复制代码

date对象

创建一个日期对象

语法:new Date();

功能:创建一个日期时间对象

返回值:不传参的情况下,返回当前的日期时间对象

//创建一个日期时间对象var today=new Date();console.log(today);复制代码

var weeks=['日','一','二','三','四','五','六'],    today=new Date(),    year=today.getFullYear(),    month=today.getMonth()+1,    date=today.getDate(),    week=today.getDay(),    hours=today.getHours(),    minutes=today.getMinutes(),    seconds=today.getSeconds(),    time=year+'年'+month+'月'+date+'日'+hours+'时'+minutes+'分'+seconds+'秒 星期'+weeks[week];console.log('现在是:'+time);复制代码

var today=new Date();today.setUTCFullYear(2017);console.log(today);复制代码

RegExp  正则表达式

描述字符串规则的表达式

/pattern/attrs

/13566668888//jerry/i        复制代码

语法:regexObj.test(str)

说明:测试正则表达式与指定字符串是否匹配

/13566668888/.text('13566668888');     //true复制代码

      复制代码

锚点:匹配一个位置

^ :起始位置,

$:结束位置 

 \b:单词边界

/\.jpg$/.test('1.jpg')    //true/\.jpg$/.test('1.jpg abc')    //false/^http:/.test('http://www.baidu.com')    //true/^http:/.test('qhttp://www.baidu.com')    //false/\bis\b/.test('this')    //false/\bis\b/.test('this is tom')    //true复制代码

/^13566668888$/    //以1开头,以8结尾复制代码

字符类:匹配一类字符中的一个

[abc]:a或b或c

[0-9]:一个数字,[^0-9]:非数字的一个字符

[a-z]:一个字母

.  :任一字符(换行除外)

/[0-9]/.test('123')        //true/[0-9]/.test('abc')        //false/[^0-9]/.test('abc')        //true 复制代码

    复制代码

元字符:具有特殊意义的字符

^,  $,  \b

\d ===   [0-9]   0-9的任意数字   \D === [^\d]      非数值

\s 空白符  \S 非空白符

\w  [A-Za-z0-9_]  单词字符     \W   非单词字符

/\d/.test('123')        //true复制代码

    复制代码

量词:出现的次数

语法:{m,n}:m到n次

*  :{0,}

?: {0,1}

+:  {1,}

    复制代码

转义符:需要匹配的字符是元字符

\ 用来转义

/^http:\/\///@16\.com/复制代码

多选分支

/thi(c|n)k//\.(png|jpg|jpeg|gif)$/复制代码

    复制代码

捕获:保存匹配到的字符串,日后再用

():捕获

/(.+)@(163|126|188)\.com$复制代码

(?:) :不捕获

/(.+)@(?:163|126|188)\.com$复制代码

使用:

$1,$2,...

api参数或返回值

str.match(regexp)

获取匹配的字符串

 复制代码

str.replace(regexp,replacement)

替换一个子串

var str="The price of tomato is 5.";str.replace(/(\d+)/,'$1.00');    //The price of tomato is 5.00.复制代码

var str="The price of tomato is 5,the price of apple is 10.";str.replace(/(\d+)/g,'$1.00');    //The price of tomato is 5.00,the price of apple is 10.00.复制代码

regexpObj.exec(str)更强大的检索

更详尽的结果:index

过程的状态:lastIndex

script>        var reg = /(.)(\d+)/g;        var scores = 'Tom $88, Nicholas ¥100, jack £38.';        var result;        while(result = reg.exec(scores)){            console.log(result);            console.log(reg.lastIndex);            // reg.lastIndex += 10;        }复制代码

JSON

JSON.parse(text)

JSON->JS

var userJson='{\    "id":1,\    "nick":"春鸟",\    "avatar":"1.jpg",\    "tags":null,\    "authed":false\}'复制代码

var user= JSON.parse(userJson);复制代码

JSON.stringify(value)

JS->JSON

var user={    id:1,    nick:"春鸟",    avatar:"1.jpg",    tags:null,    authed:false}复制代码
JSON.stringify(user);复制代码

转载地址:http://ewgfa.baihongyu.com/

你可能感兴趣的文章
Spring如何处理线程并发
查看>>
linux常用命令(用户篇)
查看>>
获取组件的方式(方法)
查看>>
win2008 server_R2 自动关机 解决
查看>>
我的友情链接
查看>>
在C#调用C++的DLL简析(二)—— 生成托管dll
查看>>
Linux macos 常用终端操作
查看>>
企业网络的管理思路
查看>>
Linux磁盘分区与挂载
查看>>
J2se学习笔记一
查看>>
DNS视图及日志系统
查看>>
老李分享:Android性能优化之内存泄漏 3
查看>>
mysql命令
查看>>
来自极客标签10款最新设计素材-系列七
查看>>
极客技术专题【009期】:web技术开发小技巧
查看>>
PHP 简单计算器代码实现
查看>>
正则表达式的知识普及
查看>>
docker使用笔记
查看>>
华为eNSP模拟器上实现FTP服务
查看>>
【全球AI人才排行榜】美国第一,中国仅排名第7
查看>>