学习
实践
活动
专区
工具
TVP
写文章
  • 广告
    关闭

    【玩转 GPU】有奖征文

    精美礼品等你拿!

  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    如何 判断 js 函数 存在

    前言 有时候想判断 一个 js 变量或者 js 函数 时候存在,该怎么实现呢? 最近开发一款应用插件,兼容pjax会调用 函数 加载播放器,但是有时候页面没有音乐就不需要加载播放器,这时候调用 函数 就会报错。 (funcName)) == "function") {return true;} } catch(e) {} return false;} 看看不是说播放器问题吗,我们需要新建 一个 函数 , pjax调用它,这个新 函数 判断加载播放器 函数 时候存在,如果存在就加载,否则就退出。 eval 函数 执行一段 js 并返回值 typeof 函数 判断类型 try catch 代码块 捕捉错误并防止程序终止 typeof(eval(funcName)) == "function (e) {} 很显然捕捉了错误 接着执行最后一行 return false; js 函数 不存在

    1.5K 3 0

    如何 实现 JS 函数 的重载

    } function f(length,width)     alert("高为:"+length+",宽为:"+width); </srcipt>     上面那段代码其实是行不通的,因为 函数 定义时的参数个数和 函数 调用时的参数个数没有任何关系 在 函数 中可以用f.arguments[0]和f.arguments[1]得到调用时传入的第一和第二个参数,所以定义function(length),后面用f(10,10)调用是没有问题的。 所以在上面这段代码中,第二个 函数 是永远不可能被调用到的,那么,要怎样才能实现像 函数 重载那样的功能呢?     那就是在 函数 定义中用f.arguments.length判断一下调用时传入的参数个数。 f()传入 一个 参数也可以传入两个参数了,比如f(10)和f(10,10);     个人觉得,这样虽然可以实现重载,但也不是很好用,我们可以根据具体情况在 一个 函数 中实现重载,如果要重载的两个 函数 相差较大 ,那就保留两个 函数 ,而如果两个 函数 的实现基本差不多,那么可以在 一个 函数 中进行判断,处理不同的部分,而不需要像上面那样写成三个 函数 ,如下: <script language="JavaScript">

    482 3 0

    js 如何 删除 一个 元素

    dis_t=1670377389&vid=wxv_2643026083432579073&format_id=10002&support_redirect=0&mmversion=false 在网页中,删除 一个 元素 ,是 一个 比较常见的操作,指的是把这个DOM元素彻底删除,而不是隐藏,一般来说,使用removeChild() 函数 是最常见的方法 具体的javaScript代码 // 删除元素 function deleteElement // 获取准备删除的DOM var del = document.getElementById("del"); // 调用删除 函数 彻底删除 del.parentNode.removeChild ----定义被删除的元素--> 即将被删除的DOM 由于removeChild() 函数 是对子元素的操作,而不是自身的删除,所以,需要先获取待删除元素的父元素 ,然后在调用该 函数 在上面的示例代码中,是先使用parentNode属性获得待删除元素的父元素,再删除目标元素

    725 5 0

    如何 设计 一个 缓存 函数

    或者在你的项目中,你有用过哪些技巧优化你的代码,比如常用的 函数 防抖、节流,或者异步懒加载、惰性加载等。 今天一起学习一下 如何 利用 函数 缓存优化你的业务项目代码。 正文开始... 现在页面我需要 一个 需求,我要在页面中插入1000条数据 分时 函数 在这之前我们使用过 一个 分时 函数 思想来优化加载数据 现在我们把这个分时 函数 写成 一个 工具 函数 // utils/timerChunks. js 缓存 函数 其实就是当我们第二次加载的时,我们会从缓存对象中获取 函数 ,这是 一个 常用的优化手段,在webpack源码中也有大量的这样的缓存 函数 处理 首先我们创建 一个 memorize工具 函数 // utils /utils/timerChunk. js ')); 实际上你也可以不需要这么做,因为timerChunk. js 本身就是 一个 函数 ,memorize只要保证传入的形参是 一个 函数 就行 所以以下也是等价的,你也可以像下面这样使用 为此这样的 一个 memorize的 函数 就可以当成业务代码的 一个 通用的工具来使用了 深拷贝对象 我们再来看另外 一个 例子,深拷贝对象,这是 一个 业务代码经常有用的 一个 函数 ,我们可以用memorize来优化,在webpack

    200 2 0

    如何 编写高质量的 JS 函数 (3) -- 函数 式编程

    JS 函数 (1) -- 敲山震虎篇》介绍了 函数 的执行机制,此篇将会从 函数 的命名、注释和鲁棒性方面,阐述 如何 通过 JavaScript 编写高质量的 函数 。 《 如何 编写高质量的 JS 函数 (2)-- 命名/注释/鲁棒篇》从 函数 的命名、注释和鲁棒性方面,阐述 如何 通过 JavaScript编写高质量的 函数 JS 之父设计 函数 为一等公民的初衷就是想让 JS 语言可以支持 函数 式编程。 函数 是一等公民,就意味着 函数 能做值可以做的任何事情。 四、在 JS 中, 如何 做到 函数 式编程? 缺少不可变数据结构( JS 除了原始类型,其他都是可变的) 没有提供 一个 原生的利于组合 函数 而产生新 函数 的方式,需要第三方支持 不支持惰性序列 缺少尾递归优化 JS 函数 不是真正纯种 函数 式语言中的 函数 形式 第二张图,使用了尾递归,最后 一个 表达式就是递归 函数 本身。 问题来了,为什么说 JS 对尾递归支持的不好呢?

    635 0 0

    如何 编写高质量的 JS 函数 (4) -- 函数 式编程

    : 《 如何 编写高质量的 JS 函数 (1) -- 敲山震虎篇》介绍了 函数 的执行机制,此篇将会从 函数 的命名、注释和鲁棒性方面,阐述 如何 通过 JavaScript 编写高质量的 函数 。 《 如何 编写高质量的 JS 函数 (2)-- 命名/注释/鲁棒篇》从 函数 的命名、注释和鲁棒性方面,阐述 如何 通过 JavaScript编写高质量的 函数 。 《 如何 编写高质量的 JS 函数 (3)-- 函数 式编程[理论篇]》通过背景加提问的方式,对 函数 式编程的本质、目的、来龙去脉等方面进行一次清晰的阐述。 技巧点如下: 1、注意 函数 中变量的类型和变量的作用域 (1)如果是值类型 -- 组合 函数 /高阶性 这可能是 一个 硬编码,不够灵活性,你可能需要进行处理了, 如何 处理呢? 首先怎么把不同的 函数 组合在一起。 现在, 如何 将小 函数 组合成 一个 完成特定功能的 函数 呢? 想一下,你会发现,这里需要用到 函数 的高阶性,要将 函数 作为参数传入多功能 函数 中。

    948 4 1

    如何 编写 一个 Vue JS 内嵌组件

    在这个例子中,将使用 Date Range Picker,它是 一个 依赖于 jQuery 和 Moment. js 的 Bootstrap 组件。 我们提供了 一个 on('apply.daterangepicker') 事件处理程序,它会监听触发开始和结束的 apply 的日期事件。 接下来,回调 函数 会在组件的实例上设置新的开始日期和结束日期。 你可以使用 ES5 查看 完整的示例( JS Bin )并且可以快速将组件适配到 ES6。 在这个组件的例子中,你可以学习 如何 通过使用组件的根 DOM 元素 this. $el 来内嵌 一个 jQuery 插件、 如何 在安装组件时初始化 一个 插件,以及 如何 连接插件来将数据发送到父组件。 Vue 的官方文档有 一个 内嵌组件示例,它演示了 如何 使用流行的 Select2 jQuery 插件与 v-model 的内嵌 Vue 组件绑定 一个 自定义的内嵌组件。

    1K 4 0

    XDM, JS 如何 函数 式编程?看这就够了!(四)

    ---- theme: qklhk-chocolate 不知不觉,我们已经来到了《 JS 如何 函数 式编程》系列的【第四篇】。 前三篇传送门: 《XDM, JS 如何 函数 式编程?看这就够了! 《XDM, JS 如何 函数 式编程?看这就够了!(二)》 《XDM, JS 如何 函数 式编程?看这就够了!(三)》 经过前几篇的历练,本瓜相信你的心中一定对 函数 编程有了基本的蓝图。 表达 一个 函数 的纯度的另一种常用方法是:给定相同的输入( 一个 或多个),它总是产生相同的输出。 不纯的 函数 是不受欢迎的!因为我们需要更多的精力去判断它的输出结果! 其实,关于 函数 纯度还有更多有意思的点: 思考 一个 问题,如果我们把 函数 和外部变量再封装为 一个 函数 ,外界无法直接访问其内部,这样,内部的 函数 算不算是 一个 函数 ? 在 js 运用幂等是 一个 新事物,我们需要逐渐熟悉它。 没有副作用的 函数 就是纯 函数 ,纯 函数 是我们追求编写的! 将 一个 不纯的 函数 重构为纯 函数 是首选。但是,如果无法重构,尝试封装副作用。

    147 1 0

    XDM, JS 如何 函数 式编程?看这就够了!(一)

    ---- theme: channing-cyan 盲猜 一个 :如果你有看过 《medium 五万赞好文-《我永远不懂 JS 闭包》》 《“类”设计模式和“原型”设计模式——“复制”和“委托”的差异 这两篇文章,你一定会对 JS 的【 函数 】有更多兴趣! JS 就是轻量级的 函数 式编程! 拆解一下这句话,品味一下~ 本瓜将借助《JavaScript 轻量级 函数 式编程》一书带领你先透析它的落脚点 函数 式编程,然后再看看 JS 为什么被称为是 “轻量的”! 此篇是《 JS 如何 函数 式编程?看这就够了!》系列的第一篇,点赞关注持续追踪! FP 概览 函数 式编程(FP),不是 一个 新的概念,它几乎贯穿了整个编程史。 这些语句旨在精确地指导计算机 如何 完成一件事情。而声明式代码,以及我们努力遵循 函数 式编程原则所写出的代码,更专注于描述最终的结果。

    161 3 0

    《XDM, JS 如何 函数 式编程?看这就够了!(五)》

    ---- theme: geek-black 本篇是《 JS 如何 函数 式编程》系列第五篇!共七篇,似乎已经能望见胜利的彼岸了!!! 纪伯伦曾说过:我们都已经走的太久了,以至于忘了为什么出发。 所以,第五篇开始前,咱们不如先来 一个 对前面每篇的梳理: 《XDM, JS 如何 函数 式编程?看这就够了! 一个 函数 如果可以接受或返回 一个 甚至多个 函数 ,它被叫做高阶 函数 。闭包是最强大的高阶 函数 !! 《XDM, JS 如何 函数 式编程?看这就够了! 偏 函数 表现形式:partial(sum,1,2)(3) 柯里化表现形式:sum(1)(2)(3) 《XDM, JS 如何 函数 式编程?看这就够了! 函数 和 partial(..) 函数 结合,可以实现丰富多彩的组装形式! 封装抽象成 函数 是一门技术活!不能不够,也不宜太过! 《XDM, JS 如何 函数 式编程?看这就够了!

    157 2 0

    XDM, JS 如何 函数 式编程?看这就够了!(六)

    ---- theme: channing-cyan 第六篇,我们首先再次重申那句经典的话: 如果要整体了解 一个 人的核心 JavaScript 技能,我最感兴趣的是他们会 如何 使用闭包以及 如何 充分利用异步 我们使用异步或者同步取决于 —— 如何 使代码更加可读!) 是两个【回调 函数 】释义,两者执行的先后顺序并不能确定,所以它是 一个 基于时间的复杂状态。 释义:回调 函数 其实就是 一个 参数,将这个 函数 作为参数传到另 一个 函数 里面,当那个 函数 执行完之后,再执行传进去的这个 函数 。 怎样去确定它们在时间上执行的先后关系呢? 我们介绍了 RxJS 库,后续我们还会介绍更多优美的 JS 函数 式编程库! (俗话说的好,三方库选的好,下班都很早!!)

    151 4 0