nodejs002

发布时间 2023-12-03 12:40:57作者: cjxxl1213
数组
//数组
//Java 数组必须是同一类型
//但是js的数组没有数据类型区分,一个数组里既可以有数值,字符等
let arr = [1,3,4,2,5,6,7,2,3]

//数组的长度
let len = arr.length

//遍历
arr.forEach(item => {
    console.log(item);
})


//数组的过滤,把符合条件的结果,返回新的数组
//当item>2的时候,放入新的数组
let arr2 = arr.filter(item => {
    if(item > 2){
        return item
    }
})
console.log(arr2);

//数组的排序
//升序---但是这个结果不太对
let arr3 = arr.sort((a,b) => a-b ? 1:-1)
console.log(arr3);

//map 把每次执行的结果返回给新数组
let arr4 = arr.map(item => {
    return item === "a"
})
console.log(arr4);

字符串

//字符串
let a = 'a'//单引号
let b = "b"//双引号
let c = 'cdsd"ddssds"'
let d = "dsfds'dddd"
console.log(a);
console.log(b);
console.log(c);
console.log(d);

//字符串的长度
let len = c.length
console.log(len);

function add(x,y){
    return x+y
}
//模板字符串,可以比较灵活的拼接字符串和方法
let e = `${add(1,2)}dsfdsfs${add(4,5)}`
console.log(e);

//字符串补位,
let f = c.padStart(20,'0')//在最前面补0,最终字符串的长度是11
let j = c.padEnd(22,'1')//在最后补1,最终字符串的长度是12
console.log(f);
console.log(j);

//字符串分隔
let arr = c.split('"')
console.log(arr);

//字符串截取,位数从0开始
d = d.slice(1,5)//截取第1位到第5位??
console.log(d);
c = c.slice(2)//如果只输入第一位参数,则表示从第2位开始截取到最后

//字符串转数字
//parseInt 是一个字符一个字符读,如果读到非数字就结束并返回
let dd = '123.3'
let num = Number(dd)
let num1 = parseInt(dd)
let num2 = parseFloat(dd)
console.log(num);
console.log(num1);
console.log(num2);

//数字转字符串
let str = String(num)
console.log(str);

//布尔型转换,其中0、空字符串,undefined、null都是false;其他的是true
let bool = Boolean(null)
console.log(bool);
let bool2 = Boolean(str)
console.log(bool2);

//二进制0b、八进制0o、十六进制0x
let nu = 0b11 //二进制
let nu1 = 0x11 //十六进制
let nu2 = 0o11 //八进制
console.log(nu,nu1,nu2);

对象

//对象
let obj = {
    a: 2,
    b: 1
}

console.log(obj.a);
console.log(obj['a']);

let str = JSON.stringify(obj)//转成字符串
let obj1 = JSON.parse(str)

console.log(str);
console.log(obj1);

//查看对象的所有属性
let arrkey = Object.keys(obj)
let arrvalues = Object.values(obj)

console.log(arrkey);
console.log(arrvalues);

let obj2 = {
    c: function reduce(x, y) {
        return x - y
    }
}
console.log(obj2.c(2, 1));

循环

//循环
let arr = [1,2,3,4,5,4,3,2,2,5,5,6]
for(let i = 0 ;i<arr.length;i++){
    console.log(arr[i]);
}

//这个i表示数组的index
for (let i in arr){
    console.log(i);
}

let obj = {
    a:1,
    b:2,
    c:3
}
for (let i in obj){
    console.log(i);//对象的key值
    console.log(obj[i]);//对象的vlaue值
}

let len = arr.length
while(len > 5){
    console.log(arr[len]);
    len--
}

判断

//判断
let i = 5
if (i > 5) {
    console.log("大于5");
}
else if (i === 5) {
    console.log("等于5");
}
else {
    console.log("小于5");
}

if(!i){
    //i不存在的话,走这块逻辑
}

switch (i) {
    case 5:
        console.log(5);
        break;
    case 4:
        console.log(4);
        break;
    default:
        console.log("其他值");
        break;
}