String、Number、Array、Object的常用属性和方法

469 阅读2分钟

1.字符串String

  • 属性

    str.length;//字符串的长度,第一个字符为0

  • 方法

    1.获取对应字符的位置

    str.indexOf(string);

    str.lastIndexOf(string);

    str.search(string);

    2.获取对应位置的字符

    str.charAt(index);//返回对应下标字符

    str.charCodeAt(index);//返回对应下标字符编码

    3.判断

    str.startsWith(searchString[, position]);

    str.endsWith(searchString[, position]);

    str.includs(string);//返回true或者false

    4.改变字符串内容

    str.subString(beginIndex[, endIndex]);//切取一段字符

    str.slice(beginIndex[, endIndex]);//切取一段字符

    str.split("");//转换成数组

    str.replace(newString,oldString);

    str.repeat(count);//重复字符串n次

    str.concat(strsing1,string2,...);

    5.改变字符串样式

    str.toUpperCase();

    str.toLowerCase();

    str.trim();//去除字符串两端空格

2.数字Number

  • 属性

    基本不常用,需要用到则去查MND文档

  • 方法

    1.判断

    num.isInfinite(value);

    num.isInteger(value);//判断是否为整数

    num.isNaN(value);//返回一个布尔值

    2.改变数字

    num.parseFloat();

    num.parseInt();

    num.toFixed(digit);//格式化小数位数

    num.toString();

    num.valueOf();//这里的num可以是new Number()

3.数组Array

  • 属性

    arr.length

  • 方法

    1.将伪数组或者可迭代对象转化成数组

    Array.from(x);

    2.基础操作方法

    arr.forEach(item=>console.log(item));

    arr.every(item=>item%2===0);//返回一个布尔值

    arr.find(i=>i>10);//返回符合条件的第一个值

    arr.findIndex(i=>i>10);//返回符合条件的第一个index

    arr.concat(arr1);

    arr.push();

    arr.pop();

    arr.unshift();

    arr.shift();

    arr.sort((a,b)=>a-b);//数组从小到大排列

    arr.reverse();

    arr.join('');//将数组变成字符串

    arr.slice(startIndex[,endIndex]);//切取一段数组

    arr.splice(2,0,"word");//从第三个开始数第一个变成word

    3.强大的map,filter,reduce

    arr.map(i=>i+1);//对数组选项n对n的操作

    arr.filter(i=>i%2===1);//数组选项变少的操作

    arr.reduce(fn);//数组各种变化,转换 代码实例:

    let arr=['one','two','three','three','three','two']
    let result=arr.reduce((result,item)=>{
        if(item in result){
            result[item]++
        }else{
            result[item]=1
        }
        return result
    },{})
    console.log(result);//{one: 1, two: 2, three: 3}
    

4.对象Object

  • 属性

    object.constructor;//返回其构造者

  • 方法

    1.挂载到Object上的方法

    Object.assign({},obj);//将obj属性复制到{}里

    Object.create(proto);//创建一个原型为proto的对象

    Object.defineProperties(obj,props);//在原对象上修改或者添加属性

    Object.entries(obj);//拆分成键值对数组

    Object.freeze(obj);//冻结对象属性

    Object.getPrototypeOf(obj);//获得原型

    Object.keys(obj)

    2.判断方法

    obj.hasOwnProperty(prop);//判断obj是否有prop这个属性

    proto.isPrototypeOf(obj);//判断proto是否为obj的原型

    3.对象通用方法

    obj.toString()

    obj.valueOf()

    不同类型对象的valueOf():