ES6特性

本文详细介绍了JavaScript中字符串处理的几个方法(如includes(),startsWith(),endsWith(),repeat(),padStart(),padEnd()),以及数组的新方法如Array.from(),map(),filter(),forEach(),find(),some(),every(),还有Object对象的新方法Object.is(),Object.assign(),Object.keys(),Object.values(),Object.entries(),帮助开发者理解和使用这些实用功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

字符串新方法
  1. includes判断字符串是否包含参数字符串,返回Boolean值
  2. startsWith()判断字符串是否已参数字符串开头
  3. endsWith()判断字符串是否已参数字符串结尾
//例如
let str  = 'Hello World'
str.includes('Hello')   //true
str.startsWith('Hello') //true
str.endsWith('Hello') //false
  1. repeat()方法按指定次数返回一个新的字符串。
console.log('hello'.repeat(2));   //'hellohello'
  1. padStart()/padEnd(),用参数字符串按给定长度从前面或后面补全字符串,返回新字符串。
let arr = 'hell';
console.log(arr.padEnd(5,'o'));  //'hello'
console.log(arr.padEnd(6,'o'));  //'helloo'
console.log(arr.padEnd(6));  //'hell  ',如果没有指定将用空格代替

console.log(arr.padStart(5,'o'));  //'ohell'

  1. 结构表达式(数组、对象)
let [a,b,c]=[1,2,3]
console.log(a,b,c,) // 1,2,3
let [a,b,c]=[1,2]
console.log(a,b,c) // 1,undefined,3
let [a,,b]=[1,2,3]
console.log(a,b) //1,3
let [a,...b]=[1,2,3] //...是剩余运算符,表示赋值运算符右边除第一个值外剩余的都赋值给b
console.log(a,b) //1,[2,3]
  1. 对象解构
let obj = { 
	name: "ren", 
	age: 12, 
	sex: "male" 
};

let { name, age, sex } = obj;
console.log(name, age, sex); //'ren' 12 'male'

let { name: myName, age: myAge, sex: mySex } = obj; //自定义变量名
console.log(myName, myAge, mySex); //'ren' 12 'male'


  1. Set(后端的Set集合对象),数组去重
let mySet = new Set([1,2,3]);//里面要传一个数组,否则会报错
console.log(mySet);  //{1,2,3}

mySet.add(4);
console.log(mySet);  //{1,2,3,4}

mySet.delete(1);  //true
mySet.has(1);  //false
console.log(mySet);  //{2,3,4}
//数组去重
let arr = [1,1,2,3,4,4];

let mySet = new Set(arr);

let newArr = Array.from(mySet);
console.log(newArr);  //[1,2,3,4]

数组的新方法
  • 新增的方法有: Array.from()是内置对象Array的方法,实例数组不能调用
  • ncludes() 参数:数值 --------返回值:true/false map()、
  • filter() 参数:函数-------- 返回值:数组
  • forEach()参数:函数-------- 返回值:undefined
  • find() 参数:函数-------- 返回值:数值
  • some()、every() 参数:函数-------- 返回值:true/false
// forEach() 方法------是循环遍历数组中的每一项,没有返回值

//find()方法---------是查找数组中符合条件的第一个元素,直接将这个元素返回出来

let arr = [10,23,64,5,16,29]
let a1= []
arr.forEach((v, i)=>{
 if (v > 10) {
   a1.push(arr[i])
 }  
})
console.log(a1) [23,64,16,29]
// find
let a= arr.find(v => v > 10)
console.log(a) // 23
// some()方法------找到一个符合条件的就返回true,所有都不符合返回false。
let arr = [1,2,3,4,6,11]

let newarr = arr.some(function(v){
 return v > 10
})
console.log(newarr) //true
// every()方法------数组所有值都符合条件才会返回true,有一个不符合返回false。
let newarr2 = arr.every(function(v){
 return v > 10
})
console.log(newarr2) //false

10.object的新方法 Object.is()、Object.assign()、Object.keys()、Object.values()、Object.entries()

  • Object.is()方法用来判断两个值是否为同一个值,返回一个布尔类型的值。
  • Object.assign()方法用于将所有可枚举属性的值从一个或多个源对象分配到目标对象,并返回目标对象。
  • Object.keys() 返回对象所有属性
  • Object.values() 返回对象所有属性值
  • Object.entries() 返回多个数组,每个数组是 key–value
const obj1 = {};
const obj2 = {};
console.log(Object.is(obj1, obj2)); // false

const obj3 = {};
const value1 = obj3;
const value2 = obj3;
console.log(Object.is(value1, value2)); // true
//Object.assign()
const obj1 = { a: 1 };
const obj2 = { b: 2 };
const obj3 = { a:5 , c: 3 };
//对象合并,把后面对像合并到第一个对象,对象里相同的属性会覆盖
Object.assign(obj1, obj2, obj3);
console.log(obj1); // { a: 5, b: 2 , c:3}

// Object.keys()、Object.values()、Object.entries()
<script>
   let person = {
   	name: "admin",
   	age: 12,
   	language: ["java", "js", "css"],
   };
   console.log(Object.keys(person)); //[ 'name', 'age', 'language' ]
   
   console.log(Object.values(person)); //[ 'admin', 12, [ 'java', 'js', 'css' ] ]
   
   console.log(Object.entries(person));    /* [
                                                        ["name", "admin"],
                                                        ["age", 12],
                                                        ["language", ["java", "js", "css"]],
                                                    ]; */
</script>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值