每天一个 js 小技巧

本文介绍了一系列实用的JavaScript函数,包括定时执行、ID自增、对象遍历、树形结构遍历及数组去重等常见操作。这些函数简洁高效,能够帮助开发者快速实现特定功能。
//定时执行并返回pormise
function a(fn, ms) {
    return new Promise((reso, sule) => {
        setTimeout(() => {
            fn()
        }, ms)
    })
}
//id自增
function getid2() {
    this.id = this.id || 0
    this.id++
        return this.id
}
//对象遍历
function additem(obj) {
    let list = []
    for (var [key, value] in obj) {
        let obj2 = {}
        obj2[key] = obj[key]
        console.log(key, obj[key])
    }
    return list

}
//定时执行
function fun(fn, time, wait) {
    var times = setInterval(() => {
        if (time == 0) {
            clearInterval(times)
        } else {
            time--
            fn()
        }

    }, wait)
}
 //遍历树
var datas = Array(datas)
    var list = []

    function getid(treeData, arr) {
        treeData.forEach((ele) => {
            list.push(ele.labml)
            if (ele.chidren && ele.chidren.length > 0) {
                getid(ele.chidren, arr)
            }
        })
    }
    getid(datas, list)
//增加一个数组去重方法
Array.prototype.tem = function() {
    console.log(this)
    return [...new Set(this)]
}

 

Python中,有多种方法可以遍历文件夹处理子目录,以下为你介绍常见的两种方法。 ### 递归遍历 递归遍历的核心思想是定义一个函数,在函数内部对当前目录下的所有文件文件夹进行遍历。如果遇到文件夹,则递归调用该函数继续遍历这个子文件夹。下面是示例代码: ```python import os allfile = [] def dirList(path): filelist = os.listdir(path) for file in filelist: filepath = os.path.join(path, file) if os.path.isdir(filepath): dirList(filepath) else: allfile.append(filepath) # 使用示例 path = '.' # 当前目录 dirList(path) for file in allfile: print(file) ``` 上述代码定义了`dirList`函数,通过`os.listdir`获取当前目录下的所有文件文件夹,使用`os.path.join`拼接路径,再用`os.path.isdir`判断是否为文件夹,若是则递归调用`dirList`函数,若不是则将文件路径添加到`allfile`列表中。 ### 使用`os.walk`方法 `os.walk`是Python标准库中用于遍历目录树的函数,它会自动处理子目录。以下是示例代码: ```python import os for root, dirs, files in os.walk('.'): for file in files: file_path = os.path.join(root, file) print(file_path) for dir in dirs: dir_path = os.path.join(root, dir) print(dir_path) ``` `os.walk`函数返回一个三元组,包含当前目录路径`root`、当前目录下的子文件夹列表`dirs`和当前目录下的文件列表`files`。通过嵌套循环,可以遍历所有的文件文件夹
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值