Javascript笔记(1)
一:简介
1. 概述:
javascript (JS) 是一种具有函数优秀轻量级,解释型或即时编译型的编程语言。
随着 Web 日益流行,对客户端脚本语言的需求越来越强烈,当时,大多数的用户使用的 28.8kbit/s 的调制解调器上网,但网页变得越来越大、越来越复杂。为了验证简单的表单而需要大量的与服务器进行往返通信成为用户的痛点,想象一下,你填完表单,当你发送到服务器端30秒后给你发送回来一句“你的密码格式不正确”,你是有多痛苦。
1995年,网景公司一位名叫 Brendan Eich 的工程师,开始发布的Netscape Navigator2
开发一个叫Mocha(后来改名为LiveScript)的脚本语言。当时的计划是在客户端和服务器端都使用它,它在服务器端叫做LiveWrie。
为了赶上发布时间,网景公司与 Sun 公司结为开发联盟,共同完成了LiveSciprt的开发,就在Netscape Navigator 2 正式发布之前,网景把LiveScript改名为了现在的Javascirpt,以便搭上媒体当时热烈炒作 Java 的顺风车。
2. javascript的组成
javascript组成由:ECMAscript,DOM,BOM,组成了一个完整的Javascipt;
ECMAscript:JS的基础语法(核心)。
DOM:文档对象模型,进行节点的操作和修改。
BOM:浏览器对象模型,操作浏览器的前进和后退功能,浏览器的提示框,和浏览器的跳转等。
二:《script》标签
将 Javascript 插入 HTML 中的主要方法是使用<script>元。这个元素是由网景公司创建出来的,并早在 Netscape Navigator 2 实现的,后来,这个元素被正式加入到HTML规范中。
内嵌式
<script>
/* console.log 是一个window下面的一个内置函数是可以在控制台中输出来的
我们可以使用键盘中的F12键来查看 */
console.log('hello world');
</script>
外链式
<script src="js/01.js"></script>
---- 01.js文件
console.log('hello World');
行内式
<!-- 点击此按钮就能触发 -->
<button onclick="console.log('Hello World')"></button>
三:注释
在 javascript 中注释的方式和 HTML 和 CSS 中是有不同的。
单行注释: //
多行注释:/* */
单行注释
// 我是单行注释
多行注释
/*
我是多行注释
我是多行注释
我是多行注释
*/
三:变量的声明(暂时性死区)
在JS我们有很三种声明变量的方式,分别是:
var
let
const
var
// 假如我有一块钱 我将会把这一块钱放进我的书包里面
var bag = 1;
/*
bag --- 代表着书包
1 --- 代表着一块钱
把一块钱 放进了书包里面,这样能清楚的知道,到时候该怎么获取
*/
// 接下来我要从书包里拿出这一块钱来
// 只需要输出这个 bag 就能从 书包里拿出来你的一块钱了。
console.log(bag); // 1
let
// 刚刚问题一样 我们也能使用 let 来进行声明变量
let bar = 1;
console.log(bar);
const
const bar = 1;
console.log(bar);
接下来我们看一下let和const的暂时性死区
此时就形成了暂时性死区了,因为使用let声明 在JS里面是不会变量提升的,而你直接先输出了该变量,因为执行机制是从上往下的,所以会形成这样一个暂时性死区。
const也是一样的。
但是 var 是没有暂时性死区这一说的,因为在Javscript中var声明变量是会在解析中变量提升。
javascript 将会把这行代码解析为:
四:var,let,const 共同点
var,let,const 他们一样的共同点都能声明变量。
let 和 const 的 共同点
-
变量不能提升
-
暂时性死区
-
不可以重复声明 注意:let声明值可以改变 但是 const声明的值不能改变(引用类型可以修改);
4. 块级作用域(你走你的阳光道,我走我的独木桥)
后续持续更新中 … 点个赞 + 收藏吧!!