JS中的数组,对象,字符串常用的方法

JS中的数组,对象,字符串常用的方法

  • 数组的常用方法:
    var arr =[1,2,3,4,5];
    arr[0] arr[arr.length-1]//通过下标找到数组中指定的元素,访问数组的元素
    arr.join("-") //数组转成字符串
    arr.toString() //数组转成字符串
    arr.push(6); //向后添加,返回新数组个数 ,原数组是添加后的数组
    arr.pop(); //从后删除,返回删除的元素
    arr.unshift(); //向前添加,返回个数
    arr.shift(); //从前删除,返回删除的元素
    arr.reverse();//反转数组
    arr.sort();//排序
    arr.slice();拷贝,生成新的数组
    arr.splice()//截取
    arr.concat();//拼接,合并
    arr.indexOf();//寻找数组中的元素的索引,没有返回-1;
    arr.lastIndexOf();//从数组最后找
    arr.length=0;//清空数组
    arr.splice(0,arr.length)//清空数组
    arr=[];//清空数组
    typeof(arr) //判断是否是数组
    Math.max.apply(null,arr)或 Math.max(…arr)//找到数组中的最大值
    Math.min.apply(null,arr)或 Math.min(…arr) //找到数组中的最小值
    数组与其他值的运算(使用"+“会自动转为string,”-"会自动转为number)
    arr2=[…arr1] // 数组赋值(对象扩展运算符的写法)
    […arr1, …arr2, …arr3] //合并数组
    // ES5
    var arr1 = str.split(’’); // [ “h”, “e”, “l”, “l”, “o” ] 字符串转化成数组
    // ES6
    var arr2 = […str]; // [ “h”, “e”, “l”, “l”, “o” ] //字符串转化成数组
    数组去重:
    方法一:
    let arr1=[1,2,1,2,6,3,5,69,66,7,2,1,4,3,6,8,9663,8] let set = new Set(arr1); //去重,但类型不是数组 console.log(set) // {1,2,6,3,5,69,66,7,4,8,9663,8]
    Array.from(set );Array.of(set ) //转换成数组并去重
    方法二:
    [... new Set(arr1)]
    数组迭代:
    filter: var arr=[1,3,6,8,45,34,90,122,9,0]; var array = arr.filter(function(element){ return element>10 }) console.log(array)
    //筛选数组中大于10的值, [45, 34, 90, 122]
    //查看原数组,并没有改变
    console.log(arr) // [1,3,6,8,45,34,90,122,9,0]

  • 字符串的常用方法:
    var str = “hello world”;
    str[0];//通过下标找到字符串指定位置的字符
    str.toUpperCase() //转大写
    str.toLowerCase() //转小写
    str.indexOf() //寻找字符串中的元素,是否存在某个字符串,没有返回-1;
    str.lastIndexOf() // 返回指定值在调用该方法的字符串中最后出现的位置,如果没找到则返回-1
    str.concat() // 拼接,合并
    str.slice(beginSlice,endSlice) // 返回被操作字符的子字符串,第一个参数为开始位置,第二个参数为结束位置,前包后不包(不改变原字符串)
    str.substring() //
    str.substr() //返回指定位置开始的指定长度的字符串
    str.split() //分隔符将一个字符串分割成多个字符串,转化成数组
    str.trim() //删除元素前置及后缀的所有空格
    str.repeat(count) // 构造并返回一个新字符串,该字符串是循环完成后的新字符串(不能为-1)“abc”.repeat(0) // “” “abc”.repeat(1) // “abc” “abc”.repeat(2) // “abcabc”
    str.startsWith(“str”) //检测字符串是不是以“str”开头的,根据判断返回true,false
    str.endsWith(“str”) //是不是以“str”结尾的
    str.includes(“aaa”) //检测一个字符串是否在另一个字符串里包含,区分大小写
    str.charAt()//根据下标查询访问字符串的某个字符,还可以使用 [ ] 的形式来访问,中括号填写的是字符串的下标
    拼接字符串:
    “”+""+"";
    "\ \ ";
    ${};
    模板字面量:``

    let c = 123
    let a = 123 456;
    console.log(a) // 123
    // 456
    字符串去重:
    [...new Set(str)].join("")

  • 对象的常用方法:
    Object.assign() // 浅拷贝,用于将所有可枚举属性的值从一个或多个源对象复制到目标对象,它将返回目标对象
    Object.assign(target, ...sources) target:目标对象;sources:源对象;返回值:目标对象
    Object.assign(obj,obj2,obj3)
    var obj = { a: 1 };
    var copy = Object.assign({}, obj);
    console.log(copy); // { a: 1 }
    var obj= JSON.parse(JSON.stringify(obj1)) //深拷贝

var obj1 = { a: 0 , b: { c: 0}};
var obj3 = JSON.parse(JSON.stringify(obj1));
obj1.a = 4;
obj1.b.c = 4;
console.log(obj3);     //{ a: 0 , b: { c: 0}};

Object.entries() //返回一个数组,其元素是与直接在object上找到的可枚举属性键值对相对应的数组。属性的顺序与通过手动循环对象的属性值所给出的顺序相同

var obj1 = {a:1,b:2};
var obj2 = Object.entries(obj1);
console.log(obj2) ;       //  [ ["a":1],["b":2] ] 

Object.is() //判断两个值是否是相等的值,返回true或false(不能够比较数组,无效)
Object.keys() //返回一个数组,一个由一个给定对象的自身可枚举属性组成的数组
obj.hasOwnProperty(key)//检测对象有没有指定的key ,返回true或false
Object.values() //方法返回一个给定对象自己的所有可枚举属性值的数组,值的顺序与使用for…in循环相同,返回的对象的value值,与Object.key()相反

  • 2
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值