html是超文本标记语言。

1.什么是JavaScript?

        javascript是一个轻量级的脚本语言,不具备开发操作系统的能力。只是用来编写或控制其他大型应用程序的脚本(在其他大型程序内部运行的语言)。

        JavaScript简称为JS。也是一种嵌入式语言,本身提供的核心语法不算很多,只能做一些数学和逻辑运算。JS本身不提供任何I/O。主要靠宿主环境,提供响应的API(该程序的接口)。对于前端,JS的主要宿主环境是浏览器。

2.JS能做什么?

  • 操控浏览器的能力:js的宿主环境是浏览器,浏览器给JS提供了很多的API可以操作浏览器实现各类交互效果。
  • HTML5出现以后,浏览器本身的作用也越来越强,浏览器不仅是浏览器网页,可以调用操作系统的相关功能,如比如本地文件、图片、摄像头、麦克风、调用手机等很多功能。。。
  • 利用Node.js平台,可以做web服务起开发(后端开发)
  • 数据库操作,如NoSql(非关系型数据库),本身基于js的JSON格式,支持JS作为操作语言。
  • 移动平台开发,如果开发webapp(把JS和h5打包到一个容器中)
  • 内嵌脚本,其他很多应用可以嵌入js,使js可以操作对应的应用。
  • h5游戏,基于js的游戏引擎,可以做各类游戏开发。
  • 3D特效,利用3D的js库(D3.JS.three.js)可以做各类3D项目

3.JS与ECMAScript的关系

        Netspace网景公司为了与微软竞争,把js提交给了ECMA组织,使其进行了国际化标准。ECMA主要指定了JS的语法\结构\部署环境等相关标准。

JS和ECMAScript指的都是一种语言。JAVA和JS是没有关系的,是Netspace为了让语言更有名气,蹭java的热度,取名叫javaScript。

        ECMA在2015年发布了6.0的版本,正式更名为ESMAScript2015

        由于ES6版本相对于之前的版本,做了很大改动,所以ES6是最出名,现在大家所说的ES6可以理解为6.0以后的版本

        以后每年都会发布一个版本。


JS基本语法

写入js代码的方法,JS宿主环境是浏览器,所以需要把js放入html标签,通过浏览器解析运行

学会JavaScript能找到工作吗 学javascript可以干什么工作_学习

建议:引入外部js文件,当前页面写script,只能当前页面用。

学会JavaScript能找到工作吗 学javascript可以干什么工作_学习_02

1. 网页运行的时候首先会把代码加载到浏览器中,

然后解析这段代码。解析的时候有css文件会加载对应的css文件。有script脚本会执行对应的脚本,如果是引入外部js代码,就等待js代码记载完成再继续。

所以,如果js 文件比较大,加载的时间可能就会比较久。

可以给script标签添加defer属性,让js代码异步加载(渲染html标签的时候同时加载js 文件,js不会阻塞html渲染)

2.并且js可能会操作dom(html标签),

在头部引入可能js运行的时候后面的html标签都没有晕染,就会出错。因此,建议大家把js代码插入在html代码body结束标签之前。

还有一个方法是在标签里面嵌入,但是这种方法很少用。

学会JavaScript能找到工作吗 学javascript可以干什么工作_赋值_03


语句

js程序执行的单位是行,也就是一行一行的执行代码。一般情况下,每一行都是一个语句。

如果有;(分号),则是分号前面为一个语句,多个分号分隔的语句写在一行。(如果多个语句在一行,必须加分号分隔)

学会JavaScript能找到工作吗 学javascript可以干什么工作_学会JavaScript能找到工作吗_04

如果一个语句一行,则不建议加分号。

学会JavaScript能找到工作吗 学javascript可以干什么工作_javascript_05

 js代码执行顺序是从上往下执行。


变量

变量可以理解为数学里面的未知数。可以表示一个值,引用变量就相当于引用了值。

(变量相当于一个盒子,装不同的内容,拿到盒子的时候就是拿到对应的内容)

1.变量是对一个具体值的引用

学会JavaScript能找到工作吗 学javascript可以干什么工作_前端_06

以上是声明变量,给变量赋值,然后打印变量。

 name的值是苹果,用到name 的地方,程序执行的时候会查询name变量对应的值并使用。

2.变量创建后要赋值才能使用,如果不给变量赋值,变量默认undfined(没有定义)

学会JavaScript能找到工作吗 学javascript可以干什么工作_学习_07

学会JavaScript能找到工作吗 学javascript可以干什么工作_前端_08

 3.创建变量可以直接赋值

学会JavaScript能找到工作吗 学javascript可以干什么工作_学会JavaScript能找到工作吗_09

 4.变量不用var关键词也是可以,但是用var关键词有创建变量的语义,可读性更强。

学会JavaScript能找到工作吗 学javascript可以干什么工作_javascript_10

(ES5的缺点,不建议)

 5.变量没有声明同时没有赋值,直接使用则会报错

js代码运行出错会终止后面代码的运行

 

学会JavaScript能找到工作吗 学javascript可以干什么工作_javascript_11

F12打开控制台,Console会显示js相关运行信息

学会JavaScript能找到工作吗 学javascript可以干什么工作_前端_12

 6.可以在同一条var命令中声明多个变量

学会JavaScript能找到工作吗 学javascript可以干什么工作_javascript_13

此时赋值只能单独赋值。

7.如果var声明了一个已经存在的变量,则无效

学会JavaScript能找到工作吗 学javascript可以干什么工作_学习_14

输出是1而不是第二次定义的undefined

学会JavaScript能找到工作吗 学javascript可以干什么工作_前端_15

输出是2!var y=2;等价于var y;y=2;只会忽略var y;的运行。相当于变量重新赋值了。

 8.var创建变量名的规范和html的ID命名类似。

以字母,$,_开头,后面可以是字母,数字,$,_,-符号的组合

 

学会JavaScript能找到工作吗 学javascript可以干什么工作_前端_16

变量命名一般要有一定的语义,多个单词的变量用小 驼峰命名法

(小驼峰:第二个单词开始,首字母大写。大驼峰:所有单词的首字母大写。) 

 

学会JavaScript能找到工作吗 学javascript可以干什么工作_学习_17

俩个不是一个变量 

js的变量名区分大小写,大写和小写是不一样的变量。

变量名不能用系统内置的关键词(如:var,if,else,for,switch等)