JavaScript学习_01——JavaScript简介

JavaScript简介

JavaScript介绍

JavaScript是一种轻量级的脚本语言。所谓"脚本语言",指的是它不具备开发操作系统的能力,而是只用来编写控制其他大型应用程序的"脚本"。

JavaScript 是一种嵌入式(embedded)语言。它本身提供的核心语法不算很多

为什么学习 JavaScript

  • 操控浏览器的能力
  • 广泛的使用领域
  • 易学性

JavaScript与ECMAScript的关系

ECMAScript和JavaScript的关系是,前者是后者的规格,后者是前者的一种实现。在日常场合,这两个词是可以互换的。

JavaScript版本

JavaScript语句、标识符

语句

JavaScript 程序的单位是行(line),也就是一行一行地执行。一般情况下,每一行就是一个语句

javascript 复制代码
<script>
        var num=10;
        var age=20;
</script>

语句以分号结尾,一个分号就表示一个语句结束

标识符

标识符(identifier)指的是用来识别各种值的合法名称。最常见的标识符就是变量名

标识符是由:字母、美元符号($)、下划线(_)和数字组成,其中数字不能开头

温馨提示

中文是合法的标识符,可以用作变量名(不推荐)

JavaScript保留关键字

以下关键字不需要强行记忆!

JavaScript有一些保留字,不能用作标识符:arguments、break、case、catch、class、const、continue、debugger、default、delete、do、else、enum、eval、export、extends、false、finally、for、function、if、implements、import、in、instanceof、interface、let、new、null、package、private、protected、public、return、static、super、switch、this、throw、true、try、typeof、var、void、while、with、yield。

变量

变量名称

变量对大小写敏感(y 和 Y 是两个不同的变量)

变量必须以字母或下划线开始

注释:由于 JavaScript 对大小写敏感,变量名也对大小写敏感。

javascript 复制代码
var num = 10; 

实例

在脚本执行的过程中,可以改变变量的值。可以通过其名称来引用一个变量,以此显示或改变它的值。

本例为您展示原理。

变量的重新赋值
javascript 复制代码
var num = 10;
num = 20;
变量提升

JavaScript 引擎的工作方式是,先解析代码,获取所有被声明的变量,然后再一行一行地运行。这造成的结果,就是所有的变量的声明语句,都会被提升到代码的头部,这就叫做变量提升(hoisting)。

javascript 复制代码
console.log(num);
var num = 10; // 结果是什么呢?

等效于

javascript 复制代码
var num;
console.log(num);
num=10;

学术论文内容来自
樊东燕. 基于JavaScript的变量作用域的辨析. 《 VIP 》 , 邓绪高.
Javascript中变量作用域浅析. 《 CNKI 》 , 2010 樊东燕.
基于JavaScript的变量作用域的辨析. 《 CNKI;WanFang 》 , 2009

相关推荐
云和数据.ChenGuang9 分钟前
Python 闭包详解:从原理到实战
linux·开发语言·人工智能·python·kubernetes
Linux-lucky10 分钟前
46-Linux学习之旅之LVS负载均衡与keepalived高可用
linux·运维·学习·ubuntu·负载均衡·lvs
揣一尾游鱼yu16 分钟前
内部类和Object笔记
java·开发语言·object·内部类
小鱼仙官36 分钟前
Qt 主界面弹出分界面
开发语言·qt
你怎么知道我是队长1 小时前
C++零基础第3周:if/else、switch、for/while/do-while 控制流完全指南(附20段可运行代码+避坑清单)
java·开发语言·c++
冻柠檬飞冰走茶1 小时前
PTA刷题集之Airline Routes(C语言实现)
c语言·开发语言·数据结构·算法
damoluomu1 小时前
Node 的 Headless 出厂没有前台,Java 的 Headless 是从门户里长出来的
java·开发语言·node.js
我命由我123451 小时前
Python 实用操作 - 文件操作(打开与关闭文件、读取文件、文件写入)
java·开发语言·前端·javascript·数据库·python·java-ee
冻柠檬飞冰走茶2 小时前
PTA刷题集之Battle Over Cities - Hard Version(C语言实现)
c语言·开发语言·数据结构·算法
Momo__2 小时前
你写的 import 重试,从来没生效过
前端·javascript·typescript