js数组常规字符操作

 const arr = [1,2,3,4,5];
 const arr1 = [1,1,1,1,1];
 const arr2 = [48,84,2,1,648,15,27,15];
 var   arr3 = "Hello World";
//every()
//方法是对数组中每项运行给定函数,如果数组的每个元素都与测试匹配,则返回true,反之则返回false。
 let result1 = arr.every(item => item === 1);       
 let result2 = arr1.every(item => item === 1);     
 console.log(result1,result2) 

//join()分隔字符串,不改变原数组
console.log(arr.join("-"));


 //reduce()
 //方法接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值。
 let result = arr.reduce((total,value)=>total+value);
console.log(result)  

//findIndex()
//此方法返回一个符合条件的数组第一个元素位置。它为数组中的每个元素都调用一次函数执行,当数组中的元素在测试条件时返回 true 时, findIndex() 返回符合条件的元素的索引位置,之后的值不会再调用执行函数。如果没有符合条件的元素返回 -1。 并没有改变数组的原始值
console.log(arr.findIndex(element=>element === 4)); 

//sort()
//此方法接收一个函数作为参数。它对数组的元素进行排序并返回它。也可以使用含有参数的sort()方法进行排序。
console.log(arr.sort((a,b)=>b-a));

//reserve()
//此方法用于颠倒数组中元素的顺序。第一个元素成为最后一个,最后一个元素将成为第一个。
console.log(arr.reverse());

//arr.length 数组的长度
console.log(arr.length);

//concat()
//连接数组或值,不会改变现有数组,而仅仅返回被连接数组的一个新数组
console.log(arr.concat(arr1)); 

//flatMap() 
//该方法将函数应用于数组的每个元素,然后将结果压缩为一个新数组。它在一个函数中结合了flat()和map()。
console.log(arr.flatMap(arr => arr*10)); 

//unshift()在数组最前面添加元素
console.log(arr.unshift(14));
console.log(arr);

//删除数组中第一个元素
console.log("删除数组中第一个元素:"+arr.shift());

//push()在数组最后添加元素
console.log(arr.push(80));
console.log(arr);

//删除数组中最后一个元素
console.log("删除数组中最后一个元素:"+arr.pop());

//includes()
//此方法用于判断字符串是否包含指定的子字符串。如果找到匹配的字符串则返回 true,否则返回 false
console.log(arr.includes(2));

//slice(n,m)
//用于从已知原素中返回指定的元素,不改变原数组,返回新数组,从n位开始到m结束
console.log(arr);
console.log(arr.slice(2,3));

//sort()
//此方法用于对数组排序,改变原数组
console.log(arr2);
arr2.sort(function(a,b){
    return a-b;
})
console.log(arr2);

//indexof()根据数据,从左到右,查询数据的位置
console.log(arr2.indexOf(15));
console.log(arr2.indexOf(15,3));

//lastIndexof()根据数据,从右到左,查询数据的位置
console.log(arr2.lastIndexOf(15));
console.log(arr2.lastIndexOf(15,2));

//charAt()返回指定位置的字符串
console.log(arr3.charAt(1));

//charCodeAt()返回指定位置字符串的unicode编码
console.log(arr3.charCodeAt(1));

//trim()删除字符串两端的空白符
console.log(arr3.trim());

//toUpperCase()将字符串转换为大写
var arr4 = arr3.toUpperCase();
console.log(arr4);

//toLocaleLowerCase()将字符串转换为小写
var arr5 = arr3.toLocaleLowerCase();
console.log(arr5);

//search() 方法搜索特定值的字符串,并返回匹配的位置:找不到的,则返回-1
var zz = arr5.search("llo");
console.log(zz);

//toString()
//此方法用于数组转换成字符串
console.log(arr2.toString());

//Date()方法
var dt = new Date();
//var dt = +new Date();
console.log(dt.setFullYear(2020));
console.log(dt);

console.log(dt.getFullYear());//年
console.log(dt.getMonth());//月---从0开始
console.log(dt.getDate());//日
console.log(dt.getHours());//小时
console.log(dt.getMinutes());//分钟
console.log(dt.getSeconds());//秒
console.log(dt.getDay());//星期---从0开始
console.log(dt.toDateString());//日期
console.log(dt.toLocaleDateString());//日期
console.log(dt.toTimeString());//时间
console.log(dt.toLocaleTimeString());//时间
console.log(dt.valueOf());//毫秒

// ==和===的区别
var a = 1;
var b = "1";
console.log(a==b);
console.log(a===b);

//数学函数 https://www.w3school.com.cn/js/js_math.asp
//https://www.w3school.com.cn/jsref/jsref_obj_math.asp
//取π值
console.log(Math.PI);
//4舍5入
console.log(Math.round(4.7));
//取绝对值
console.log(Math.abs(-6));
//返回x平方根
console.log(Math.sqrt(49));
//Math.pow(x, y) 的返回值是 x 的 y 次幂:
console.log(Math.pow(2,3));
//向上取整
console.log(Math.ceil(8.2));
//向下取整
console.log(Math.floor(10.8));
//取90°的sin值
console.log(Math.sin(90 * Math.PI/ 180));
//取0°的cos值
console.log(Math.cos(0 * Math.PI / 180));
//在数组中取最小值
console.log(Math.min(0, 150, 30, 20, -8, -200));
//在数组中取最大值
console.log(Math.max(0, 150, 30, 20, -8, -200));
//取0(包括)-1(不包括)之间的随机数
//console.log(Math.random());
//Math.random() 与 Math.floor() 一起使用用于返回随机整数
//0-9之间的整数
//console.log(Math.floor(Math.random() * 10));
//0-10之间的整数
//console.log(Math.floor(Math.random() * 10)+1);
//console.log(Math.floor(Math.random() * 11));

//Boolean() 函数
console.log(Boolean(7<8));
console.log(Boolean(7>8));

//三元运算符
console.log((7<8)?0:1);

//

//async和await
 function testAsy(x){
   return new Promise(resolve=>{setTimeout(() => {
       resolve(x);
     })
    }
   )
}
async function testAwt(){    
  let result =  await testAsy('hello world');
  console.log(result);    // 3秒钟之后出现hello world
  console.log('tangj')   // 3秒钟之后出现tangj
}
testAwt();
console.log('tangSir')  //立即输出tangSir


function getSomething() {
    return "something";
}

async function testAsync() {
    return Promise.resolve("hello async");
}

async function test() {
    const v1 = await getSomething();
    const v2 = await testAsync();
    console.log(v1, v2);
}

test();
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值