开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 4425|回复: 6
收起左侧

[JS相关教程] 通过易语言轻松入门JavaScript

[复制链接]
结帖率:43% (12/28)
发表于 2020-1-15 13:37:13 | 显示全部楼层 |阅读模式   四川省广安市

前言

为什么学习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 公司专门做的一款写代码的等宽字体)

结帖率:100% (8/8)

签到天数: 27 天

发表于 2021-7-14 16:30:42 | 显示全部楼层   广东省东莞市
好东西 收下了 谢谢
回复 支持 反对

使用道具 举报

发表于 2020-11-28 09:07:05 | 显示全部楼层   浙江省台州市

这么好的东西没人回复?
回复 支持 反对

使用道具 举报

结帖率:100% (33/33)

签到天数: 23 天

发表于 2020-11-28 00:45:07 | 显示全部楼层   河南省平顶山市
被标题吸引进来的
回复 支持 反对

使用道具 举报

结帖率:83% (10/12)

签到天数: 8 天

发表于 2020-11-17 21:43:45 | 显示全部楼层   山东省枣庄市
你好视频怎么不能看
回复 支持 反对

使用道具 举报

发表于 2020-4-7 11:24:41 | 显示全部楼层   江苏省南京市
很好的学习路线,希望能多多分享
回复 支持 反对

使用道具 举报

结帖率:68% (43/63)

签到天数: 25 天

发表于 2020-1-17 19:18:38 | 显示全部楼层   江苏省无锡市
这么好的东西没人回复?都回家过年了吗?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 诚聘英才| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 800073686,邮箱:800073686@b.qq.com
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表