首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【JS】327- javascript 的 api 设计原则

可延伸 所谓延伸就是指函数的使用像流水一样按照书写的顺序执行形成执行链条: document.getElementById('id').style.color = 'red'; document.getElementById...// nightmare document.getElementById('id').style.color = 'red'; document.getElementById('id').style.fontSize...typeof 会强制检测对象不抛出错误,对于未定义的变量尤其有用。 2....抛出错误 大多数开发者不希望出错了还需要自己去找带对应得代码,最好方式是直接在 console 中输出,告诉用户发生了什么事情。...zepto 在这里使用了很多的是非判断,这样做的好处当然是代码比之前更健壮,但同时导致了代码的冗长,不适合阅读。总之,可预见性真正需要你做的事多写一些对位置实物的参数。把外部的检测改为内部检测。

66220

修炼内功之JavaScript设计模式(二)

咳咳,天凉了请喝鸡汤~ 可能本系列文章中所讲的设计模式你在工作中经常应用它们,但是并不知道它们的名字。...) { document.getElementById(id)[key] = value; }, html : function (id, html) { document.getElementById...2 适配器模式 Adapter 概念:将一个类(对象)的接口(方法或者属性)转化成另外一个接口,以满足用户需求,使类(对象)之间接口的不兼容问题通过适配器得以解决。...window.A = A = jQuery; jQuery中的适配器 jQuery.fn.css() jQuery核心cssHook // (为了控制文数,此处不贴代码,阅读完后大家可自行去官网查看)...4 装饰者模式 Decorator 概念:在不改变原对象的基础上,通过对其进行包装拓展(添加属性或者方法)使原有对象可以满足用户的更复杂需求。

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

    JavaScript LocalStorage 完整指南

    3.4 标签间同步数据 使用 localStorage,用户可以在浏览器选项卡上打开一个计时器网站,启动计时器,然后打开同一网站的另一个选项卡,在两个选项卡之间同步计时器。...下面是一个监听存储事件的简单示例: window.addEventListener("storage", myFunction); function myFunction(event) { document.getElementById...newWindow.localStorage.setItem("mytime", Date.now()); newWindow.close(); } 每当对 localStorage 进行更改时...打开新选项卡、访问新域或关闭浏览器都不会清除 localStorage。另一方面,每当会话结束时,sessionStorage 将被清除。打开一个新选项卡或访问一个新域将清除特定域的会话。...localStorage 的 API 也更容易上手,使之成为更受欢迎的选择。 引入 IndexedDB 的主要原因是为了提供更好的 localStorage 版本。

    2.3K10

    前端开发必备之Chrome开发者工具(上篇)

    例如,如果您的 JavaScript 正在更改 DOM 元素的样式,请将 DOM 断点设置为在元素属性修改时触发。...在发生以下一种 DOM 更改时触发断点:子树更改、属性更改、节点移除 子树修改 设置子树修改断点:右键选择某个元素,然后选择 Break on --> subtree modifications 添加、...例如,如果您在 main-content 元素上设置子树修改,以下代码将触发断点: var element = document.getElementById('main-content'); //modify...源代码面板(Sources) 在源代码面板中设置断点来调试 JavaScript ,或者通过Workspaces(工作区)连接本地文件来使用开发者工具的实时编辑器 格式化混淆代码 在某些情况下,我们需要对混淆的代码做一定的调试...异常断点 当您想暂停引发捕获或未捕获异常的代码行时,使用异常断点 设置异常断点: 点击 Sources 选项卡。 点击暂停 ? ,启用后变成蓝色。

    8.3K111

    深入理解JavaScript与DOM

    例如,如果有一个带有ID属性intro的文本元素,你可以很容易地通过DOM API来改变该元素的颜色: document.getElementById('intro').style.color = '#...例如,下面的代码是不工作的,并且会抛出语法错误: myIntroStyles.padding-top = '10em'; // 产生语法错误: // 在JavaScript里横线-是减法操作符 /...除了style属性以外,一个节点(或元素)也还有其他很多属性可以操作,如果你使用Firebug,点击DOM选项卡可以看到所有该节点(或元素)的所有属性: image.png 所有的属性都可以通过点标示符来访问...; }); 注意到我们传入了一个匿名函数作为第三个参数,JavaScript运行我们定义和执行匿名函数,这种匿名函数特别适合作为参数传递,实际上我们也可以传递有名的函数(代码如下),但是你们函数更容易做...; } } 事件委托依赖于事件冒泡,如果事件冒泡到table之前被禁用的话,那上面的代码就无法工作了。

    65630

    被忽略的缓存 -bfcache

    同一个项目不同的页面,部署在同一个环境中的表现也不统一。 同一个项目同一个页面部署同一个环境,在 Chrome 和 Safari 中的表现也不统一。...visibilitychange(如果导航发生在可见选项卡中):页面可见性发生变化 其中 bfcache 的工作又可以分成以下步骤: 页面进入 bfcache:当用户从一个页面导航到另一个页面时,如果浏览器支持...(需要注意的是,bfcache 的行为可能因不同浏览器而异,而且它通常受到浏览器性能和内存管理策略的影响有些浏览器可能会更主动地检查和更新 bfcache 中的页面内容,而其他浏览器可能会更谨慎,仅在需要时才更新...这样浏览器就可以安全地缓存页面,而不会影响其他打开的选项卡。...通过了解 bfcache 的工作原理和如何正确利用它,我们可以充分发挥这一机制的优势,并提供更快速的页面加载体验。

    99330

    IntelliJ IDEA 2019.2 大量出色的新功能

    ⑤树形视图中的全新 View | Appearance | Descriptions 选项为 Project 视图中列表和树中的元素添加了其他信息,例如文件大小和修改时间。...⑦继续介绍 UI 整理工作:我们清理了 Find Usages 工具窗口中的工具栏,并将所有很少使用的图标移除或组合在一起。我们还清理了上下文菜单。...11 Scala ①IntelliJ IDEA 现在会显示类型归因提示并高亮显示与预期类型不匹配的部分。 ②类型不匹配工具提示现在进行了精细的垂直对齐,并提供成对比较。...17 终端 ☞现在,在您运行输出长行的命令时,终端会顺利地自动换行,且能确保所有链接正常工作。 要了解详情,请查看“最新功能”页面的终端部分。...19 插件 ①我们使 Plugins 页面更符合人体工学。 ②新的 IDE 版本剥离了空闲插件。

    2.2K10

    【前端基础篇】JavaScript之DOM介绍

    例如,在上面的代码中,style.color 用于获取和设置文本颜色。...元素节点.children 返回元素的一个子元素的集合(不包含空白文本Text节点)。 元素节点.firstChild 返回元素的第一个子节点(包含空白文本Text节点)。...元素节点.firstElementChild 返回元素的第一个子元素(不包含空白文本Text节点)。 元素节点.lastChild 返回元素的最后一个子节点(包含空白文本Text节点)。...元素节点.lastElementChild 返回元素的最后一个子元素(不包含空白文本Text节点)。...用户对于页面的一些操作(点击, 选择, 修改等) 操作都会在浏览器中产生一个个事件, 被 JS 获取到, 从而进行更复杂的交互操作. 浏览器就是一个哨兵, 在侦查敌情(用户行为).

    12010

    >>开发工具:IntelliJ IDEA 2022.1 的新功能

    记住这些热键可以帮助您将手放在键盘上,从而提高工作效率。所有默认快捷方式都是可配置的,您还可以将快捷方式分配给默认情况下没有它们的任何操作。...可以快速启动一个空项目者有更复杂的项目;使用 Java、Kotlin、Groovy 和 JavaScript 的预配置选项; 2.3 通知工具窗口 事件日志实例已替换为新的通知工具窗口。...它更清楚地突出重要和有用的建议和通知,并将它们组织在专用工具窗口中。 2.4 均匀拆分选项卡 在编辑器选项卡之间平均分配工作空间,使它们的宽度都相同。...2.15 Git Blame更新注释 使用 Git Blame进行注释的功能,使调查引入的更改更容易。...2.20 代码审查评论和快捷键 立即发布或另存为草稿 在 IDE 中审查代码更改时,您现在可以选择何时发布代码审查评论。

    34420

    Apriso 开发葵花宝典之五 Process Builder JavaScript 篇

    5、ajax等web应用的先进特性 HTML选项卡中的JavaScript脚本将包含在此操作的每个实例中。 JavaScript选项卡中的JavaScript脚本将仅在此操作的所有实例中包含一次。...在JavaScript选项卡中链接的JavaScript文件对于所有操作只包含一次。脚本链接将根据src属性(不区分大小写)进行合并。...这很快就会变得一团糟,如 function renderProfiles(o){ var out = document.getElementById(‘profiles’); for(var i...你可以通过定义var Bar = foo.bar来获得性能提升 避免for-in循环(和基于函数的迭代), for-in不仅可能循环遍历额外的数组项,而且还需要更多的工作。...用户类选择器 使用Java Script选项卡输入JQuery代码。

    65160

    Mac文件对比软件Beyond Compare 4

    macOS系统偏好设置手动启用;可能需要重启·增加了对比较JPEG / TIFF EXIF和IPTC元数据的支持·删除“二进制比较期间绕过磁盘缓存”选项;由于硬件,操作系统和驱动程序的变化,它不再像原来的那样工作...连接点的RAR5存档的支持·在Unix上创建的存档现在正确显示Unix属性·修复跨多个RAR卷分割的文件的CRC值·固定支持RAR4和RAR5档案云服务·升级Dropbox支持使用v2 API·文件最后修改时间现在可以设置...·文件夹最后修改时间不再报告·现在支持超过2000个项目的文件夹列表·固定支持在美国东部2(美国东俄亥俄州),ca-central-1(加拿大中部),欧盟西部2(欧盟伦敦)和ap-south-1(亚太孟买...GetBucketLocation”权限时,增加了连接到Amazon S3存储区的支持·向Amazon S3配置文件添加了可选的“Bucket”,以将配置文件限制到该存储区,并在用户没有ListAllBuckets权限时更明确地连接命令行...,会修复性能问题·如果父文件夹存在,则保存从文件夹比较启动的孤立比较的最初空白方面,“保存为”现在具有默认文件名·固定文件打开权限,以防止文件打开以供其他应用程序写入时出现意外行为·固定的编辑器在切换选项卡后的慢速保存期间不重画

    1.9K50

    ONLYOFFICE 文档8.2版本:全面升级,带来更高效的协作编辑体验

    滚动更流畅:修复了电子表格编辑器中的滚动行为,使得在工作表中滚动更加舒适。路径:根据用户需求进行调整。...路径:布局选项卡 -> 工作表从右到左(测试版)。...界面改进:提供了填充和线条两种选项卡样式,用户可以根据个人喜好选择。引入了灰色主题,帮助用户更专注地编辑文档。...因此,即使文件不包含视觉部分或设置不正确,编辑器现在也可以显示 Smart Art。 更多图表类型:现在,在文档、工作表和幻灯片中可以查看直方图、瀑布图和漏斗图。...Smart Art改进:对于某些Smart Art,添加了视觉部分的生成,即使文件不包含视觉部分或设置不正确,编辑器现在也可以显示Smart Art。

    14010

    Android项目重构之路:界面篇

    如果不设定好规范,让每个人都按照自己的习惯和风格去编码,久了肯定乱,尤其当团队中存在还没养成良好编码习惯的人员时,更容易乱。所谓无规矩不成方圆,若无规范,久必乱。...那么,保持方法的单一性,关键并不在于怎么定义这个方法的行为,而在于这个行为要怎么拆分成更细的行为。...很多开发人员,为了图方便,应用界面中出现的字符串经常在代码或布局文件里直接定义的,尺寸值也是,这样造成的结果就是,当某些字符串需要修改时,比如要支持国际化,或一些尺寸值需要修改时,通常是很多地方都要修改...strings_title.xml文件里,其他资源文件也可以用类似的方式进行处理: 页面标题,命名格式为:title_{页面} 按钮文字,命名格式为:btn_{按钮事件} 标签文字,命名格式为:label_{标签文字} 选项卡文字...,命名格式为:tab_{选项卡文字} 消息框文字,命名格式为:toast_{消息} 编辑框的提示文字,命名格式为:hint_{提示信息} 图片的描述文字,命名格式为:desc_{图片文字} 对话框的文字

    91040

    IntelliJ IDEA 2024.1 更新亮点汇总:全面提升开发体验

    现在,对话框中的代码反映了编辑器中的内容,使您可以更清楚地了解冲突,并且 IDE 会自动保存窗口大小调整以供将来使用。...这些改进包括识别禁止的修饰符混合、计算缩进深度、在不破坏缩进的情况下进行剪切和粘贴操作以及将结束标记与其语法结构相关联的能力。...*在“日志”*选项卡 中显示审核分支更改的选项 IntelliJ IDEA 2024.1 通过提供分支相关更改的集中视图来简化代码审查工作流程。...待处理的 GitHub 更新的视觉指示器 我们引入了视觉指示器来通知您代码审查工作流程中待处理的更新。当有需要您注意的更改时,工具窗口图标上会出现一个点。...运行/调试 多个语句的内联断点 IntelliJ IDEA 2024.1 提供了更方便的工作流程,用于在包含 lambda 函数或 return 语句的行中设置断点。

    3.2K10

    Excel揭秘26:解开“属性采用图表数据点”的功用(1)

    场景B—问题来了 在更实际的情况下,我们图表中的一个或多个元素应用了自定义格式。让我们应用与上面相同的例子,看看它是如何发挥作用的。 (1)整理数据。...在“Excel选项”对话框中,选择左侧的“高级”选项卡,在右侧找到“图表”部分,可以看到“属性采用所有新工作簿的图表数据点”和“属性采用当前工作簿的图表数据点”选项。 ?...图10 看起来很有意思:自定义格式和数据标签在图表中移动或更改时会跟随数据点。有点莫名其妙! 默认设置是这两个复选框都被选取(True),因此属性将采用数据点。 好了!取消复选框选择呢。...取消选取“属性采用当前工作簿的图表数据点”复选框,如下图11所示。 ? 图11 目前还不是很清楚是什么意思。接着往下看。 VBA代码 你可能想在VBA代码中更改这些属性。...对于所有工作簿选取或取消选取该复选框的代码: Application.ChartDataPointTrack = True Application.ChartDataPointTrack = False

    1.6K30
    领券