好程序员技术分享html5和JavaScript的区别,HTML5广义上讲是前端开发学科的代名词,包含HTML5、CSS3及JavaScript三个重要的部分,是运行在浏览器上应用的统称。如PC端网站、管理系统、手机网页应用(WebApps)、混合应用(HybridApps)、微信公众号、小程序、小游戏、数据可视化等。

HTML5狭义上讲是指HTML版本5(v5),相较HTML4,增加了很多新的元素(标签)和元素属性,大大增强了HTML的语义化和表现力,这一部分属于页面结构的内容,比如媒体标签video、audio,画布canvas标签,这三个新标直接K.O了flash。另外,HTML5增加了很多API,为移动APP开发奠定了坚实的基础,比如优化了本地存储(WebStorage)、应用的离线缓存(Application Cache)、地理定位(Geolocation)、监听网络状态等。

上述的HTML5新增的API就是通过JavaScript来调用的,或者本身就是JavaScript程序。下面列示一些重要的API:

API名称

功能描述

API举例

应用缓存

web 应用可进行缓存,并可在没有因特网连接时进行访问

通过配置Manifest文件实现缓存

WebSQL

Web SQL Database概念,它使用 SQL 来操纵客户端数据库的 API

openDatabase()
transaction()
executeSql

本地存储

web 应用程序能够在用户浏览器中对数据进行本地的存储

window.localStorage
window.sessionStorage

Canvas

HTML5 <canvas> 标签通过JavaScript绘制图像

createLinearGradient()
fillRect()
stroke()
bezierCurveTo()
transform()
drawImage()

文件API

让前端操作文件变的可能

FileList、File、Blob、FileReader、URL

地理定位

HTML5 Geolocation(地理定位)用于定位用户的位置

navigator.geolocation.getCurrentPosition(showPosition)

多媒体

在网页里播放音频和视频的新的Api

video,audio系列API

拖放

优化了原生JavaScript实现的拖放

ondragstart、setData()、ondragover、ondrop

history

window对象通过history对象提供了对浏览器历史的访问

pushState()、replaceState()

网络状态

HTML5网络状态检测

window.ononline、window.onoffline

WebWorker

web worker 是运行在后台的 JavaScript,不会影响页面的性能

new Worker()、postMessage()

WebSocket

WebSocket 是 HTML5 开始提供的一种在单个 TCP 连接上进行全双工通讯的协议

Socket.send()、Socket.close()

以上可见,HTML5新增的API,是离不开JavaScript的,JavaScript是前端开发的核心,只学HTML5,或者说只学HTML5标签是不能进行前端开发的,或者这样说本来就是不全面的,因为HTML5是包含JavaScript Api的。

目前,大前端的概念已经深入人心,大前端开发的职业前景越发的广阔,Google fluter,人工智能(AI)在前端的应用赋能大前端开发,使这些从业者越来越抢手。

大前端开发包括很多内容: HTML5,CSS3,JavaScript,ES,TypeScript,BootStrap,jQuery,Vue.js, React, RN, Angular, 各类小程序,JavaScript库,前端开发工具,Node.js,状态管理,桌面开发(Electron), 前端单元测试,服务器,Socket编程,服务端渲染,前端架构等等。

小白入门,一时间还真有点无从下手。如果基础好,自学能力强,自制能力强,可以买些书籍或视频学习,如果想系统的短期速成,可以考虑报个培训班。

希望能帮到你,祝你早日炼成前端达人。

好程序员技术分享html5和JavaScript的区别的更多相关文章

  1. 好程序员技术教程分享JavaScript运动框架

    好程序员技术教程分享JavaScript运动框架,有需要的朋友可以参考下. JavaScript的运动,即让某元素的某些属性由一个值变到另一个值的过程.如让div的width属性由200px变到400 ...

  2. 【原文】前端程序员必须知道的高性能Javascript知识

    原文:前端程序员必须知道的高性能Javascript知识 想必大家都知道,JavaScrip是全栈开发语言,浏览器,手机,服务器端都可以看到JS的身影. 本文会分享一些高效的JavaScript的最佳 ...

  3. 自学android半年,已从.net转型成android程序员,分享下这个过程

    自学从来都是一件难以坚持的事情,看过太多人三分钟热度之后就颓然放弃,然后告诉下一个要自学的人,自学很难,还是正儿八经去培训机构吧 所以首先你要对安卓开发非常感兴趣,发自内心喜欢安卓系统,日常手机如果是 ...

  4. 【好程序员笔记分享】——iOS开发之纯代码键盘退出

    -iOS培训,iOS学习-------型技术博客.期待与您交流!------------ iOS开发之纯代码键盘退出(非常简单)     iOS开发之纯代码键盘退出 前面说到了好几次关于键盘退出的,但 ...

  5. 非名校毕业年薪20W程序员 心得分享

    大家好,我是落落http://blog.csdn.net/robinson1988/ QQ692162374,其实我选择Oracle是一件很神奇的事情,但是现在回想起来又觉得是命中注定.我2006年就 ...

  6. 黄文俊:Serverless小程序后端技术分享

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 黄文俊,现任腾讯云SCF无服务器云函数高级产品经理,多年企业级系统开发和架构工作经验,对企业级存储.容器平台.微服务架构.无服务器计算等领域 ...

  7. 关于PHP程序员技术职业生涯规划

    看到很多PHP程序员职业规划的文章,都是直接上来就提Linux.PHP.MySQL.Nginx.Redis.Memcache.jQuery这些,然后就直接上手搭环境.做项目,中级就是学习各种PHP框架 ...

  8. 关于PHP程序员技术职业生涯规划[转]

    看到很多PHP程序员职业规划的文章,都是直接上来就提Linux.PHP.MySQL.Nginx.Redis.Memcache.jQuery这些,然后就直接上手搭环境.做项目,中级就是学习各种PHP框架 ...

  9. 关于PHP程序员技术职业生涯规划 转自 韩天锋

    转自 http://rango.swoole.com/ 看到很多PHP程序员职业规划的文章,都是直接上来就提Linux.PHP.MySQL.Nginx.Redis.Memcache.jQuery这些, ...

随机推荐

  1. navicat导入.sql文件

    用Navicat for Mysql导入.sql文件   虽然这算不上什么难事,但是对于新手来说(比如说我),Navicat for MySQL里的导出连接.运行SQL文件.导入向导.还原备份.这些功 ...

  2. 漏洞经验分享丨Java审计之XXE(上)

    最近在审计公司的某个项目时(Java方面),发现了几个有意思的Blind XXE漏洞,我觉得有必要分享给大家,尤其是Java审计新手,了解这些内容可以让你少走一些弯路. Java总体常出现的审计漏洞如 ...

  3. 磁盘阵列raid类型及含义

    raid0: 多块盘同时进行读写: 优点是读写效率高,缺点是没有数据冗余: 最少需要两块盘. raid1: 将数据盘都做镜像: 优点是有数据冗余:缺点是读写效率低,磁盘利用率低: 最少需要两块盘. r ...

  4. 当List<String> list =new ArrayList<String>(20); 他会扩容多少次

    当List<String> list =new ArrayList<String>(20); 他会扩容多少次?A 0       B 1 C 2 D 3答案是A: 因为这个集合 ...

  5. 每日分享!~ JavaScript数组去重

    数组去重 数组去重在很多面试的过程中,都是大题出现!网络上出现了很多数组去重的方式.多数的达到了12种以上. 今天我只给大家介绍两种我比较喜欢,比较认可!入手简单的-能解决自己的问题就可以了 好了 , ...

  6. Winows + VSCode + Debug PHP

    一.环境 环境:Win10 二.软件 1.安装VSCode 下载地址:https://code.visualstudio.com/Download 2.PHP 代码包 版本:php-7.2.9-Win ...

  7. 使用remix发布部署 发币 智能合约

    Remix是一个基于浏览器的编译器和IDE,使用户能够使用Solidity语言构建以太坊合约并调试事务. 在上一篇文章已经成功的使用代码讲智能合约编译并且发布部署到了链上,可是在部署 发币的智能合约 ...

  8. MyBridgeWebViewDemo【集成JsBridge开源库的的封装的webview】

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 使用的是第三方库lzyzsd/JsBridge,但是不同的是,将自己封装的MyBridgeWebView通过继承BridgeWebV ...

  9. Vmware虚拟机中CentOS7与Docker安装图文教程

    1.安装VMware 下载一个软件安装: 2.新建一个虚拟机 等待自动安装完成 配置系统语言: 配置系统时间: 配置系统键盘: 语言支持: 默认自动使用安装源: 配置软件环境,需要及时添加的软件,这里 ...

  10. Java多线程打辅助的三个小伙子

    前言 之前学多线程的时候没有学习线程的同步工具类(辅助类).ps:当时觉得暂时用不上,认为是挺高深的知识点就没去管了.. 在前几天,朋友发了一篇比较好的Semaphore文章过来,然后在浏览博客的时候 ...