js对象常用方法

275 阅读7分钟

Array对象

  • 定义

    • new Array()
    • new Array(size)
    • nes Array(element0,element1,...,elementn)
  • 属性

    • constructor:返回对创建此对象的数组函数的引用
    • length
    • prototype:使可以向对象中添加属性和方法
  • 方法

    • concat():连接两个或多个数组,并返回结果。用+替代

    • join():转成字符串。元素通过指定的分隔符进行分割

    • pop():删除并返回数组的最后一个元素

    • push():向数组尾部添加一个或多个元素,并返回新的长度

    • shift():删除并返回数组第一个元素

    • unshift():向数组头添加一个或多个元素,并返回新的长度

      注:添加都是返回新的长度,且可以添加多个;删除都是返回这个删除的元素,且一次只能删一个。

    • sort():排序,默认按照字符编码的顺序排序,具体方法如下 注:若a<b,则排序后的数组中a出现在b之前,并返回一个小于0的值 若a=b,则返回0; 若a>b,则返回一个大于0的值 sort(function);//需要传入一个比较的方法

      //排序函数
      function(a,b){return a-b}//升序函数
      function(a,b){return b-a}//降序函数
      
    • splice():(start,length删除的个数,插入的项)删除添加替换

      返回删除的数组,若空则返回空数组

    • slice(): 裁剪,返回选定的元素(start,end) 不会影响原数组

      不包括结束位置,若有负数,加上长度,若结束位置<起始位置,则返回空数组

      长度为5 slice(-2,-1)=slice(3,4)

    • reverse():逆序

    • toSource():返回该对象的源代码

    • toString():把数组转为字符串,并返回结果

    • toLocaleString():把数组转为本地数组,并返回结果(时间吗)

    • valueOf():返回数组对象的原始值

    有兼容性问题 IE9+

    • indexOf(要查找的数据,开始查找的位置 默认0)

      返回值:查找到的第一个数据的所有,没有就返回-1

    • lastIndexOf() 同上

    • every()

    • filter()

    • forEach()

    • map()

    • some()

Booleaan对象

Boolean对象表示两个值:true或false

  • 定义

    • new Boolean(value)//构造函数
    • Boolean(value)//转换函数
  • 属性

    • constructor:返回对创建此对象Boolean函数的引用
    • prototype:使可以向对象添加属性和方法
  • 方法

    • toSource():返回该对象的源代码
    • toString():把逻辑值转换为字符串,并返回结果
    • valueOf():返回Boolean对象的原始值

String对象

  • 定义
    • new String(s);
    • String(s)
    • 参数s是要存储在String对象中或转换成原始字符串的值??
  • 属性
    • constructor:对创建该对象的函数的引用
    • length:字符串的长度
    • prototype:允许向对象添加属性和方法
  • 方法
    • anchor():创建HTML

    • link():将字符串显示为链接

    • big():用大号字体显示字符串

    • small():使用小号字体显示字符串

    • blink():显示闪动字符串

    • bold():粗体

    • italics():斜体

    • strike():删除线

    • toLocaleLowerCase():转小写

    • toLocaleUpperCase():转大写

    • toLowerCase():换大写

    • toUpperCase():换小写

    • sub():下标

    • sup():上标

按索引找值

  • charAt():返回在指定位置的字符

  • charCodeAt():返回在指定位置的字符的Unicode编码

  • concat():连接字符串

  • fixed():以打字机文本显示字符串

  • fontcolor():使用指定的颜色来显示字符串

  • fromCharCode():从字符编码创建一个字符串

按值找索引

  • indexOf():检索字符串

  • lastIndexOf():从后往前索引字符串

  • localeCompare():用本地特定的顺序来比较两个字符串

  • slice(start,end):截取,并在新的字符串中返回被提取的部分

    负数,+长度。不包括前大后小的情况

  • substr():(start,length可选)截取,返回截取的字符串

    负数:第一个参数+长度,第二个参数转换为0

  • substring():(start,stop可选),参数是非负整数,截取

    会把负数全部转换为0(即不支持负数),若一个参数为负数,标签全部截取

  • split():分割为字符串数组,返回数组

    参数:分割符,默认不分割

正则表达式

  • match(str/regexp):找到一个或多个正则表达式的匹配

    找到了就返回该值,没有就返回null

    indexOF

  • replace(regexp/substr,replacement):替换与正则表达式匹配的字符串

  • search(str):检索与正则表达式相匹配的值

    找到对应字符串的位置。没有就-1

    Object

  • toSource():代表对象的源代码

  • toString():返回字符串

  • valueOf():返回某个字符串对象的原始值

RegExp类型

  • 定义

    • /pattern/attributes
    • new RegExp(pattrn,attributes)
  • 修饰符attribute

    • g 全局匹配
    • i 区分大小写
    • m 多行匹配
  • 方括号

    • [abc] 查找方括号之间的任何字符
    • [^abc] 查找任何不在方括号之间的字符
    • [0-9]
    • [a-z]
    • [A-Z]
    • [A-z] 查找从大写A到小写z的字符
    • [adgk] 查找给定集合内的任何字符
    • [^adgk]
    • (red|blue|green)查找任何指定的选项
  • 元字符

    • . 查找单个字符,除了换行和行结束符
    • \w 单词
    • \W 非单词
    • \d 数字
    • \D 非数字
    • \s 空白字符
    • \S 非空白字符
    • \b 匹配单词边界?
    • \B 匹配非单词边界
    • \0 查找NUL字符
    • \n 查找换行符
    • \f 换页符
    • \r 回车符
    • \t 制表符
    • \v 垂直制表符
    • \xxx 八进制
    • \xdd 十六进制
    • \uxxxx 十六进制
  • 量词

    • n+ 1+
    • n* 0+
    • n+ 0或1
    • n{x}
    • n{x,y}
    • n{x,}
    • n& 匹配任何结尾为n的字符串
    • ^n 匹配任何开头为n的字符串
    • ?=n 匹配任何其后紧接指定字符串n的字符串??
    • ?!n 匹配任何没有紧接指定字符串n的字符串
  • RegExp对象属性

    • global g
    • ignoreCase i
    • laseIndex 一个整数,标志开始下一次匹配的字符的位置
    • multiline m
    • source 正则表达式的源文本
  • RegExp对象方法

    • complie 编译正则表达式

    • exec 检测字符串中指定的值。返回找到的值,并确定其位置

    • test检测字符串中指定的值。返回true或false

      Regexp.test(strinng)

  • 支持正则表达式的String方法

    • search 正则表达式相匹配的值
    • match 找到一个或多个正则表达式的匹配
    • replace 替换与正则表达式匹配的子串
    • split 把字符串分割为字符串数组

Function类型

全局属性和函数可用于所有内建的JavaScript对象

  • 顶层函数(全局函数)

    • decodeURI()解码某个编码的URI
    • decodeURIComponent()解码一个编码的URI组件
    • encodeURI()把字符串编码为URI
    • encodeURIComponent()把字符串编码为URI组件
    • escape()对字符串进行编码
    • eval()计算JavaScript字符串,并把它作为脚本代码来执行
    • getClass()返回一个javaObject的javaClass
    • isFinite()检查某个值是否为有穷大的数
    • isNaN()检查某个值是否是数字
    • Number()把对象的值转换为数字
    • parseFloat()解析一个字符串并返回一个浮点数
    • parseInt()解析一个字符串并返回一个整数
    • String()把对象的值转换为一个整数
    • unescape()对由escape()编码的字符串解码
  • 顶层属性(全局属性)

    • Infinity 代表无穷大的数值

    • java 代表java.*包层级的一个javaPackage

    • NaN

    • Packages 梗javaPackage对象

    • undefined 指示未定义的值

JSON转换及方法

  • JSON.stringify()//把一个JavaScript对象序列化成一个JSON字符串(即转成字符串) var jsonString = JSON.sgringify(book);//book是一个对象 注:在序列化的过程中,所有函数及原型成员会被忽略,不体现在结果中。此外,值为undefined的任何属性也都会被跳过。结果中最终都是值为有效的JSON数据类型的实例属性
  • JSON.parse()把JSON字符串解析为原生JavaScript值 var bookCory = JSON.parse(jsonText);

  • join() 把数组转成字符串;

    如果不加参数,就默认每一项为一个字符串

  • split() 把字符串切割为数组

    注:如果不指定分隔符,就整个字符串是数组中的一个元素