首页
技术小册
AIGC
面试刷题
技术文章
MAGENTO
云计算
视频课程
源码下载
PDF书籍
「涨薪秘籍」
登录
注册
函数参数与返回值
传递变长参数
defer 和追踪
内置函数
递归函数
将函数作为参数
闭包
应用闭包:将函数作为返回值
使用闭包调试
计算函数执行时间
通过内存缓存来提升性能
声明和初始化
切片
For-range 结构
切片重组(reslice)
切片的复制与追加
字符串、数组和切片的应用
声明、初始化和 make
测试键值对是否存在及删除元素
for-range 的配套用法
map 类型的切片
map 的排序
将 map 的键值对调
标准库概述
regexp 包
锁和 sync 包
精密计算和 big 包
自定义包和可见性
为自定义包使用 godoc
使用 go install 安装自定义包
自定义包的目录结构、go install 和 go test
通过 Git 打包和安装
Go 的外部包和项目
在 Go 程序中使用外部库
结构体定义
使用工厂方法创建结构体实例
使用自定义包中的结构体
带标签的结构体
匿名字段和内嵌结构体
方法
类型的 String() 方法和格式化描述符
垃圾回收和 SetFinalizer
当前位置:
首页>>
技术小册>>
go编程权威指南(二)
小册名称:go编程权威指南(二)
> JavaScript ( JS ) 是一种具有函数优先的轻量级,解释型或即时编译型的编程语言。(MDN) `JavaScript` 是一种编程语言,主要参与构建 Web 前端应用。 1\. JavaScript 的由来 ------------------ 早期的浏览器是不具备与用户交互能力的,可以想象一下,在那个电话拨号上网的年代,带宽只有 56Kbps,也就是意味着标准最高下载速率只有 8KB/s。 在这个速度下,表单提交就是噩梦般的存在。 例如报名考试,就需要填写非常多内容,当用户花了十几分钟找各种资料填写表单后,点击提交就要等待十几秒甚至更多。 假如这时表单信息出错,如身份证没核对仔细少了一位,整个页面就会做刷新操作,表单需要重新填写。 这是一个比较典型的场景。当时最火的浏览器 `Navigator` 的开发公司 `netscape` 就因这些问题,急需一个浏览器使用的脚本语言,让运行在浏览器上的网页可以做一些交互。 `netscape` 因为有这个需求,招聘了 `Brendan Eich` , `Brendan Eich` 进公司后就开始研究使用 `Scheme` 语言作为在网页中使用的脚本语言的可能性。 但是由于当时 Java 爆火,`netscape` 又在于开发了 Java 的 `Sun` 公司合作,就想让这个脚本语言要足够像 Java,但是又要比 Java 简单。 然后 `Brendan Eich` 就被指定开发这个“简易 Java”。 一段时间之后 `JavaScript` 也就诞生了。 后续 `netscape` 将 `JavaScript` 交给了 `ECMA` 组织进行标准化,编号为 262,也就是说现在的 `JavaScript` 实际上是 `ECMA-262` 标准的实现。 2\. 与 Java 的区别 -------------- 通过`JavaScript的由来`可以知道,两个语言本质上没有太大的关系,仅仅只为了让他们像,才让 `JavaScript` 的名字中有了 `Java` ,才让他的内部的一些设计机制像 `Java`。 事实上 `JavaScript` 上在设计上还融合了`C语言`的语法,`Self语言`的原型设计等。 3\. JavaScript 的主要应用 -------------------- > 以下列举的各个场景不仅仅是需要掌握 `JavaScript` ,还需要很多知识点与技术栈来共同协作完成,但是 `JavaScript` 是必不可少的技术栈。 ### 3.1 网页开发 网页开发的基本三大件为 HTML、CSS、JavaScript,如果将 HTML 比作骨架,CSS 比作皮肤,那 JavaScript 就是可以让骨架动起来,改变皮肤性状的存在。 现代的前端应用离不开 `JavaScript` ,随着浏览器的性能越来越好,产品交互越来越复杂,`JavaScript` 的地位也越来越高。 表单验证、动画效果甚至 3D 应用,均可以由 JavaScript 来完成。 ### 3.2 服务端应用开发 2009 年发布 `Node.js` 的发布,意味着前端程序员可以用较低的成本跨入服务端开发。 `Node.js` 提供了开发服务端所需要的特性,如 HTTP 服务、本地文件读写操作等。 开发者可以使用 `JavaScript` 语言开发 `Node.js` 应用。 <center></center> <center>Node.js</center> ### 3.3 桌面应用开发 `Electron` 是由 `Github` 开发的,可以使用 HTML、CSS、JavaScript 来构建桌面应用的开源库。 使用`Electron`就可以让前端开发者进行桌面端应用的开发。 `Visual Studio Code`、`Atom`、`Skype` 等应用都是使用 `Electron` 开发的。 ### 3.4 移动端应用开发 移动端应用也可以使用 `JavaScript` 进行开发,如 `React Native` 或者 `Weex` 等框架。 4\. 适合群体 -------- 本篇 Wiki 主要为 `ECMAScript262` 第五版内容,适合初学者学习或者进行知识点查阅。 5\. 前置知识 -------- 章节中的例子可能会涉及部分 `HTML` 与 `CSS` 的知识点,所以需要了解或者掌握一些 `HTML`、`CSS` 相关的内容作为前置知识。
下一篇:
开发与学习环境准备
该分类下的相关小册推荐:
从零写一个基于go语言的Web框架
Go进阶之分布式爬虫实战
深入解析go语言
Golang并发编程实战
深入浅出Go语言核心编程(四)
go编程权威指南(三)
深入浅出Go语言核心编程(五)
Go Web编程(上)
Go开发权威指南(上)
Go开发基础入门
go编程权威指南(四)
深入浅出Go语言核心编程(七)