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

JS代码超过1000,该怎么维护?

1000JS代码,听起来挺多的,但实际上真不算什么,随便一个功能完备、代码健壮的JS应用或是模块,很轻松的就写出1000多行,看这里,我以前写的一个tabel插件,带有CRUD功能、展开、加载、上传、...所以,现代的大型web应用,1000以上的JS代码我觉得就是“起步价”而已。那么这种大型应用的开发,我们必须对JS的可维护性有一个清醒的认识。 不要觉得,“我写的代码,我还维护不了么”?很有可能。...js代码我个人主观觉得,啰嗦一点会更好些。 然后对于数据的加载和使用,要有一定的适应性,不要搞的json的结构一变,你的js整个不能运行。自己封装一个分析json的公共方法。...新人写js有一个特点,就是一心想着“我赶紧写出来”。就好像在学校上课一样,赶紧完成老师的作业。其它的就不管了,什么格式啊,缩进啊,都不管。但是良好的代码风格本身就是js可维护性的一个组成部分。...不必担心什么变量名太长会增加体积,现在js都是被压缩过的。 还有一个方面就是声明变量时的变量类型。同学们应该都知道,js中的变量声明是没有类型的。搞一个变量出来,什么都可以往里放。

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

    js代码识别Selenium+Webdriver

    先不说淘宝这种基于用户行为的反爬虫策略,仅仅是一个普通的小网站,使用一Javascript代码,就能轻轻松松识别你是否使用了Selenium + Chromedriver模拟浏览器。...可能有一些会js的朋友觉得可以通过覆盖这个参数从而隐藏自己,但实际上这个值是不能被覆盖的: ?...对js更精通的朋友,可能会使用下面这一段代码来实现: Object.defineProperties(navigator, {webdriver:{get:()=>undefined}}); js =...因为当你执行:driver.get(网址)的时候,浏览器会打开网站,加载页面并运行网站自带的js代码。...接下来,又有朋友提出,可以通过编写Chrome插件来解决这个问题,让插件里面的js代码在网站自带的所有js代码之前执行。

    2.6K30

    ElementUI 基于vue+sortable.js实现表格拖拽

    基于vue+sortable.js实现表格拖拽 实践环境 sortablejs@1.13.0 vue@2.6.11 element-ui@2.13.2 安装sortable.js拖拽库 npm install...* oldIndex:被拖拽的索引 * * ====================(被拖拽记录1) *...======(被拖拽记录2) * 如果从上往下拖拽,即newIndex > oldIndex,那么在目标位置对应记录上移(目标位置对应记录索引值减1),在newIndex所指位置插入被拖拽...(被拖拽索引设置为newIndex),视觉效果就是在after位置(即目标位置对应下方)插入被拖拽 * 如果从下往上拖拽,即newIndex < oldIndex,那么在目标位置对应记录下移...(目标位置对应记录索引值加1),在newIndex所指位置插入被拖拽(被拖拽索引设置为newIndex),视觉效果就是在上述before位置(即目标位置对应上方)插入被拖拽

    3.4K10

    40代码内实现一个React.js

    作者:胡子大哈 链接:https://zhuanlan.zhihu.com/p/25398176 1、前言 本文会教你如何在 40 代码内,不依赖任何第三方的库,用纯 JavaScript 实现一个...React.js 。...本文的目的是:揭开对初学者看起来很很难理解的 React.js 的组件化形式的外衣。如果你刚开始学习 React.js 并且感觉很迷茫,那么看完这篇文章以后就能够解除一些疑惑。...(注意这里加入了上面没有提到过点 props,可以给组件传入配置属性,跟 React.js 一样)。 只要有了上面那个 Component 类和 mount 方法加起来不足40代码就可以做到组件化。...好吧,我承认我标题党了,这个 40 不到的代码其实是一个残废而且智障版的 React.js,没有 JSX ,没有组件嵌套等等。它只是 React.js 组件化表现形式的一种实现而已。

    2.5K30

    Faker.js作者:要么付钱要么你你上

    Faker.js可以制造非常多不同类型的假数据,用于开发调试。 作为fake数据领域最优秀的开源项目之一,Faker.js有3.2万star。...即使这是个可行的方式,网友也为这些优秀的开源项目的维护者感到不公: 这些优秀的开源项目为JS领域创造这么多价值,他们理应赚到上百万 修改开源许可 也有网友建议Faker.js修改开源许可协议。...截止2021年6月5日,Faker.js仍使用MIT协议 继续前进 可以看到,即使嘴上说着气话,身体却很诚实,「Marak」还在继续维护Faker.js。 技术人的世界就是这么朴实无华且单纯。 ?...基于Faker.js,「Marak」开发了“假数据的云服务网站”Faker Cloud 提供在线“假数据”生成服务。...从法律上讲,从Faker.js使用MIT协议那天开始,就注定了商业公司可以任意使用它。 一方面,商业公司确实白嫖了「Marak」的工作成果。

    66830

    JS】547- 200JS代码,带你实现代码编译器(人人都能学会)

    其实我们也经常接触到编译器的使用场景: React 中 JSX 转换成 JS 代码; 通过 Babel 将 ES6 及以上规范的代码转换成 ES5 代码; 通过各种 Loader 将 Less / Scss...接下来进入本文主题:「200JS代码,带你实现代码编译器」。 二、编译器介绍 2.1 程序运行方式 现代程序主要有两种编译模式:静态编译和动态解释。...Runtime (运行时) 包大小 较小 较大 执行性能 更好 - 启动时间 更短 - 除此之外 AOT 还有以下优点: 在客户端我们不需要导入体积庞大的 angular 编译器,这样可以减少我们 JS...对象 function codeGenerator(node) { switch (node.type) { // 遍历 body 属性中的节点,且递归调用 codeGenerator,按输出结果...最后,文中介绍到的代码,我存放在 Github 上: [learning]the-super-tiny-compiler.js[4] [writing]webpack-compiler.js[5] 六、

    2.6K40

    一个只有99代码的JS流程框架 (一)

    最近一直在想一个问题,如何能让js代码写起来更语义化和更具有可读性。...想到这里一个js框架雏形在我大脑中慢慢形成,暂且命名为flowJS。 接着说说这个框架应该有哪些API?...可能有人会用Promise来跟flowJS对比,其实Promise更多的是为了解决JS异步回调的问题,而flowJS不仅也能解决异步回调问题,还能让代码看起来更加语义化和流程化,使得代码更具可读性。...flowJS不仅能用于页面JS开发,同样在nodeJS横行的时代,必须也是支持在服务端的nodeJS来使用的,无任何第三方依赖!...好了,安利了那么多,现在来看看这个只有99代码的框架的真面目 ↓ 我真的没有压缩代码,它真的只有99! 最后提示: 框架源码和各demo在附件中可下载! 附件: flowJS.zip

    10K103

    一个只有99代码的JS流程框架(二)

    导语 前面写了一篇文章,叫《一个只有99代码的JS流程框架》,虽然该框架基本已经能实现一个流程正常的逻辑流转,但是在分模块应用下还是缺少一定的能力,无法将一个页面中的不同模块很好的连接在一起,于是对之前的框架进行了升级...在这个升级后的框架里(当然代码已经不止99了,不要在乎标题),每个步骤不但可以是一个function,还可以引用另一个流程,这个被引用的流程就叫子流程。...在子流程的每一步中都可以获取 this.parent,得到的是当前子流程对应的步骤,这个步骤跟其他步骤一样也具有同样的API(详见上一篇文章《一个只有99代码的JS流程框架》对步骤API的介绍)。

    1.6K100
    领券