精易论坛

标题: 通过易语言轻松入门JavaScript [打印本页]

作者: 什么叫易    时间: 2020-1-15 13:37
标题: 通过易语言轻松入门JavaScript
https://www.bilibili.com/video/av83499132/

前言


为什么学习JavaScript?


JavaScript的应用已经覆盖了你的生活。



网页交互: (现代网页都使用JavaScript做交互)


跨平台应用开发: (Typora , Visual Studio Code-typescript(Js的超集) , Mortix , ant)


前后端开发: ( Vue.js jQuery.js Node.js )               



如果一种语言满足:


需求大,岗位多,跨平台,生态好...


你没得选,只有JavaScript满足。


JavaScript简介


​     JavaScript(简称“JS”) 是一种具有函数优先的轻量级,解释型或即时编译型的编程语言。虽然它是作为开发Web页面的脚本语言而出名的,但是它也被用到了很多非浏览器环境中,JavaScript 基于原型编程、多范式的动态脚本语言,并且支持面向对象、命令式和声明式(如函数式编程)风格。


​     JavaScript在1995年由Netscape公司的[Brendan Eich](https://baike.baidu.com/item/Brendan Eich),在网景导航者浏览器上首次设计实现而成。因为NetscapeSun合作,Netscape管理层希望它外观看起来像Java,商业竞争Java火所以名字差不多,因此取名为JavaScript,跟Java没有任何关联。但实际上它的语法风格与SelfScheme较为接近。


​     JavaScript的标准是ECMAScript 。截至 2012 年,所有浏览器都完整的支持ECMAScript 5.1,旧版本的浏览器至少支持ECMAScript 3 标准。2015年6月17日,ECMA国际组织发布了ECMAScript 的第六版,该版本正式名称为 ECMAScript 2015,但通常被称为ECMAScript 6 或者ES6.


微软抄袭了苹果 - 抄袭JS(JScript)-网景公司知道自己干不过微软-捐了自己的JS版权-ECMA国际


JavaScript组成部分


graph LR
A[ECMAScript,JS标准] --- B[DOM,处理网页内容的方法和接口] --- c[BOM,与浏览器交互的方法和接口]

ECMAScript:Ecma国际(前身为欧洲计算机制造商协会,European Computer Manufacturers Association)通过ECMA-262标准化的脚本程序设计语言。

DOM:DocumentObjectModel(文档操作模型)W3C标准的操作html文档和xml文档的接口

BOM:BrowserObjectModel  (浏览器操作模型)浏览器对象模型提供可以与浏览器窗口互动的对象结构。


JavaScript特性


JavaScript脚本语言具有以下特点:


​     (1)脚本语言。JavaScript是一种解释=脚本语言,C、C++等语言先编译后执行,而JavaScript是在程序的运行过程中逐行进行解释。


​     (2)基于对象。JavaScript是一种基于对象的脚本语言,它不仅可以创建对象,也能使用现有的对象。


​     (3)简单。JavaScript语言中采用的是弱类型的变量类型,对使用的xx类型未做出严格的要求,是基于Java基本语句和控制的脚本语言,其设计简单紧凑。


​     (4)动态性。JavaScript是一种采用事件驱动的脚本语言,它不需要经过Web服务器就可以对用户的输入做出响应。在访问一个网页时,鼠标在网页中进行鼠标点击或上下移、窗口移动等操作JavaScript都可直接对这些事件给出相应的响应。


​     (5)跨平台性。JavaScript脚本语言不依赖于操作系统,仅需要浏览器的支持。因此一个JavaScript脚本在编写后可以带到任意机器上使用,前提上机器上的浏览器支持JavaScript脚本语言,JavaScript已被大多数的浏览器所支持。


​     不同于服务器端脚本语言,例如PHPASP,JavaScript主要被作为客户Duan脚本语言在用户的浏览器上运行,不需要服务器的支持。所以在早期程序员比较青睐于JavaScript以减少对服务器的负担,而与此同时也带来另一个问题:安全性。


​     而随着服务器的强壮,虽然程序员更喜欢运行于服务端的脚本以保证安全,但JavaScript仍然以其跨平台、容易上手等优势大行其道。同时,有些特殊功能(如AJAX)必须依赖Javascript在客户Duan进行支持。随着引擎如V8和框架如Node.js的发展,及其事件驱动及异步IO等特性,JavaScript逐渐被用来编写服务器端程序。


强类型or弱类型


编程语言专家 Benjamin C. Pierce,《Types and Programming Languages》和《Advanced Types and Programming Languages》的作者,曾说:


“我花了几个星期…试着弄清楚“強类型”、“静态类型”、“安全”等术语,但我发现这异常的困难…这些术语的用法不尽相同,所以也就近乎无用。”


大致而言,“強类型”隐含着编程语言对容许混合情况出现加上了严格的限制,以避免程式码以无效的资料使用方式编译或运行。例如,整数除法运算不可用于字串;链表上的运算步骤不可用于数字。然而,这些限制的本质和效力是极易改变的。


JavaScript编程


​     JavaScript是一种脚本语言,其源代码在发往客户Duan运行之前不需经过编译,而是将文本格式的字符代码发送给浏览器由浏览器解释运行。直译语言的弱点是安全性较差,而且在JavaScript中,如果一条运行不了,那么下面的语言也无法运行。而其解决办法就是于使用try{}catch(){}︰


console.log("hello JS");//这是正确的
console.logg("hello JS");//这是错误的,并且到这里会停下来
/*解决办法*/
try{console.log("hello JS");}catch(e){}//这是正确的
try{console.logg("hello JS");}catch(e){}//这是错误的,但是到这里不会停下来,而是跳过

​     Javascript被归类为直译语言,因为主流的引擎都是每次运行时加载代码并解译。V8是将所有代码解译后再开始运行,其他引擎则是逐行解译(SpiderMonkey会将解译过的指令暂存,以提高性能,称为实时编译),但由于V8的核心部分多数用Javascript撰写(而SpiderMonkey是用C++),因此在不同的测试上,两者性能互有优劣。与其相对应的是编译语言,例如C语言,以编译语言编写的程序在运行之前,必须经过编译,将代码编译为机器码,再加以运行。


JavaScript版本


​     JavaScript已经被Netscape公司提交给ECMA制定为标准,称之为ECMAScript,标准编号ECMA-262。符合ECMA-262 3rd Edition标准的实现有:



  1. Microsoft公司的JScript.

  2. Mozilla的JavaScript-C(C语言实现),现名SpiderMonkey

  3. Mozilla的Rhino(Java实现)

  4. Digital Mars公司的DMDScript

  5. Google公司的V8

  6. WebKit



































































年份 名称 描述
1997 ECMAScript1 第一个版本
1998 ECMAScript2 版本变更...
1999 ECMAScript3 添加正则表达式
添加 try/catch...
ECMAScript4 没有发布
2009 ECMAScript5 添加 "strict mode"
添加 JSON 支持...
2011 ECMAScript5.1 版本变更...
2015 ECMAScript6 添加类和模块...
2016 ECMAScript7 增加指数运算符 (**)
增加 Array.prototype.includes...
2017 ECMAScript8 字符串填充...
2018 ECMAScript9 异步函数,异步迭代...
2019 ECMAScript10 flat()嵌套数组展开为扁平数组,递归数组,flat()


ECMAScript 6 也称为 ECMAScript 2015。


ECMAScript 7 也称为 ECMAScript 2016。


所有浏览器都完整的支持ECMAScript 5.1。特别古老的浏览器也支持到了es3



扩展阅读


JavaScript是不是通过编译语言提供功能


检查浏览器ES6支持度


JavaScript入门准备


html5,css(选择器,盒模型,定位搞懂就行) 2天左右就可以了。


推荐学习网站


工具准备: 浏览器(推荐火狐开发者版本)


​                 编辑器:VSCODE(微软),HBuilder X(国产),sublime text3


​                 字体:Source Code(adobe 公司专门做的一款写代码的等宽字体)



作者: 陈大奶么么哒    时间: 2020-1-17 19:18
这么好的东西没人回复?都回家过年了吗?
作者: chenji123    时间: 2020-4-7 11:24
很好的学习路线,希望能多多分享
作者: 金胖子    时间: 2020-11-17 21:43
你好视频怎么不能看
作者: chhzll    时间: 2020-11-28 00:45
被标题吸引进来的
作者: 一道背影    时间: 2020-11-28 09:07

这么好的东西没人回复?
作者: 文西哥    时间: 2021-7-14 16:30
好东西 收下了 谢谢





欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4