热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

JavaScript全讲-它能做什么

上篇我们讲到JavaScript已经成为最热门的开发语言,但是很多传统的开发者或许并不认同!你一定遇到这样的情景:JavaScript,肯定不安全吧?只是用来验证的?不只是传统的开发

上篇我们讲到Javascript已经成为最热门的开发语言,但是很多传统的开发者或许并不认同!你一定遇到这样的情景:Javascript, 肯定不安全吧? 只是用来验证的?


不只是传统的开发者,很多不了解Javascript语言的人,对它的印象都还一直停留在"弱语言"的层次! 今天我们就来聊聊目前的Javascript能做什么,它又是凭借什么成为"最热门"开发语言的。


1. 本地化存储

由于Javascript一直没有存储数据的能力,导致Javascript处在一个“辅助”的地位,HTML5的推广,JS有了Storage,IndexDB等特性,可以存储适量(Storage大约在5M)的数据。不要小看这适量的存储,妥善设计,可以让你的系统脱离后端的制约。目前各大平台都已支持,包括Android,IOS.


2.ApplicationCache

俗称“高级缓存”,HTTP协议本身会针对请求文件进行缓存,但是由于这个缓存是协议层的设计,应用层要灵活控制比较麻烦。而ApplicationCache就是针对应用层的API,结合本地存储,可以实现离线应用! 大家看到离线应该就明白了。目前类似淘宝京东这样的电商App端,不联网照样可以正常操作。更换缓存文件,就可在应用内部失效小版本更新。


3. 高级图形编程

Javascript在图形处理方面一直是比较弱的。之前处理图形用的是SVG,SVG完全用XML来是实现图形。大型的图形处理,类似游戏中,就不太方便(目前主流的游戏引擎还是使用DOM来开发的)。而HTML5的Canvas,完全使用编程来实现图形,较之SVG更加灵活。虽然目前并没有成为主流,但是已经暂露头脚,其在游戏开发中的份额已经越来越多。



4. 后端语言

NodeJS的流行,让Javascript可以作为后端语言,加之Javascript的异步特性,以及灵活的函数式编程,针对高并发有独特的优势!相对于Java,C#等后端语言,它也更显得小而美,一个文件即可实现一个Server功能。



5. 云打印

在许多的企业软件中,都需要对各种单据进行打印,原始的Report技术都采用JasperReport以及RML等第三方进行处理。学习成本抛开不说,单是构造Report的格式就浪费太多精力,谁用谁知道!

目前市面上有许多的WebKit引擎,可以实现“虚拟DOM” 。这就可以在后台实现打印,没有额外的学习成本,还可以实现可见即所得,用户也不用安装任何打印组件,真正实现“云打印”。


“云打印”并非设想,我已完整实现,相较于传统的Report,云打印更可以兼具多线程,批量打印等额外功能。



6. 构建高扩展的架构

你可能会奇怪, “构建高扩展的架构”为什么也成为Javascript专有的特性了。 别着急,听我慢慢道来!

Javascript作为动态语言,加上其继承的灵活性,又兼具函数式编程的特性,在针对Javascript设计架构时,相较于Java会更具扩展性! Javascript从一开始被被冠以“难以管理”,但是在经过了CMD,MVC等等的发展,早已不是当初的Javascript,如果设计得当,它的兼容扩展性秒杀传统的后端语言。


Web的发展,会继续推动Javascript支持更多的特性!至于我们耳熟能详的视频播放,音频,由于其相对狭窄的应用范围,就不多讲了。


看过文章,可能有很多读者不服,说这些特性都不成熟,不能贸然使用,或者说我还是觉得它不安全! 对于此,我只能以呵呵回之!


下一篇,我会讲述Javascript必知的特性!涉及命名污染,匿名函数,继承,闭包等高级特性。






推荐阅读
  • 本文介绍了如何利用高德地图API实现一个高效的地点选择组件,适用于需要用户选择具体位置的应用场景,如活动邀请函填写等。该组件支持从地图中选择地点,并自动将地点信息回填至表单中。 ... [详细]
  • 开发笔记:Mongodb副本集集群搭建 ... [详细]
  • 本文介绍了如何通过修改Android应用的配置文件和编写布局与Activity代码,利用DOM模式将用户输入的数据保存为XML文件。 ... [详细]
  • 本文详细介绍了利用JavaScript实现的五种不同的网页弹出窗口技术,包括全屏窗口、全屏模式窗口、带收藏链接工具栏的窗口、网页对话框及HTA窗口。 ... [详细]
  • 本文探讨了在不同场景下如何高效且安全地存储Token,包括使用定时器刷新、数据库存储等方法,并针对个人开发者与第三方服务平台的不同需求提供了具体建议。 ... [详细]
  • 在处理木偶评估函数时,我发现可以顺利传递本机对象(如字符串、列表和数字),但每当尝试将JSHandle或ElementHandle作为参数传递时,函数会拒绝接受这些对象。这可能是由于这些句柄对象的特殊性质导致的,建议在使用时进行适当的转换或封装,以确保函数能够正确处理。 ... [详细]
  • 将JavaScript文件嵌入HTML文档是Web开发中的基本操作。常见的方法是通过在HTML文件中使用``标签来引用外部的.js文件。这种方法不仅保持了代码的整洁性,还便于管理和维护。此外,还可以利用模块化脚本和异步加载技术进一步提升页面性能。 ... [详细]
  • 在 Angular Google Maps 中实现图片嵌入信息窗口的功能,可以通过使用 `@agm/core` 库来实现。该库提供了丰富的 API 和组件,使得开发者可以轻松地在地图上的信息窗口中嵌入图片。本文将详细介绍如何配置和使用这些组件,以实现动态加载和显示图片的功能。此外,还将探讨一些常见的问题和解决方案,帮助开发者更好地集成这一功能。 ... [详细]
  • 本文提供了中国三大主要通信运营商(中国联通、中国电信和中国移动)的官方邮箱服务网站链接,帮助用户快速访问并管理个人邮件,同时介绍了如何设置短信提醒功能。 ... [详细]
  • 深入理解FastDFS
    FastDFS是一款高效、简洁的分布式文件系统,广泛应用于互联网应用中,用于处理大量用户上传的文件,如图片、视频等。本文探讨了FastDFS的设计理念及其如何通过独特的架构设计提高性能和可靠性。 ... [详细]
  • MySQL 5.7 绿色版安装及 my.ini 配置详解
    本文主要针对最近因系统重装导致的MySQL配置问题,详细介绍了MySQL 5.7.24绿色解压版的安装步骤及my.ini配置文件的关键设置,帮助用户顺利完成数据库的安装与配置。 ... [详细]
  • 解决JavaScript中法语字符排序问题
    在开发一个使用JavaScript、HTML和CSS的Web应用时,遇到从SQLite数据库中提取的法语词汇排序不正确的问题,特别是带重音符号的字母未按预期排序。 ... [详细]
  • 本文详细探讨了使用纯JavaScript开发经典贪吃蛇游戏的技术细节和实现方法。通过具体的代码示例,深入解析了游戏逻辑、动画效果及用户交互的实现过程,为开发者提供了宝贵的参考和实践经验。 ... [详细]
  • 本文探讨了如何利用 jQuery 的 JSONP 技术实现跨域调用外部 Web 服务。通过详细解析 JSONP 的工作原理及其在 jQuery 中的应用,本文提供了实用的代码示例和最佳实践,帮助开发者解决跨域请求中的常见问题。 ... [详细]
  • MyJGUI 0.7.3:强大的MySQL管理工具最新版发布
    MyJGUI 0.7.3 是一款基于 Java 的 MySQL 数据库管理工具的最新版本。此更新引入了新的键盘快捷键,并对用户界面进行了多项改进,提升了用户体验和操作效率。此外,该版本还优化了性能,增强了稳定性和安全性,为数据库管理员提供了更加便捷和高效的管理工具。 ... [详细]
author-avatar
zengshiming
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有