JavaScript学习第一天笔记(变量、常量、数据类型)

何双江yarshray 2019-06-28

JavaScript简介

JavaScript是一门跨平台、面向对象的轻量级脚本语言,运行于JavaScript解释器或者引擎中。
JavaScript中,包括三个主要的部分
1.核心语法内容(ECMAScript)
2.文档对象模型(DOM)
3.浏览器对象模型(BOM)


console控制台

1.console.log() 向标准输出流打印字符并以换行符结束。
2.console.log() 向标准输出流打印信息性消息。输出文字外,会显示一个蓝色的惊叹号。
3.console.log() 向标准输出流打印警告性信息。输出文字外,会显示一个黄色的惊叹号。
4.console.log() 向标准输出流打印错误性信息。输出文字外,会显示一个红色的叉子。


JavaScript的基本语法

1.区分大小写
JavaScript是一种区分大小写的语言。这意味着JavaScript的关键字、变量名、函数名以及任何其他的标识符必须使用一直的大小写的形式。

var wolongxueyuan = '卧龙学苑';
console .log(wolongxueyuan);

var Wolongxueyuan = 'Wolongxueyuan';
console .log(Wolongxueyuan);

var WoLongxueyuan = 'WoLongxueyuan';
console .log(WoLongxueyuan);

2.空格与换行
JavaScript会忽略出现在代码中的空格、制表符和换行符,在编写代码时,灵活领用空格和换行符是的代码的可读性更高

3.可选的分号
在JavaScript中,每一个语句一般是以分号结尾的,分号表示这条JavaScript语句的结束。但是,JavaScript也允许将分号忽略。建议在编写代码时,不省略结尾的分号,来使代码的可读性更高。

4.注释
在JavaScript中经常是使用注释来为代码添加说明。快捷键Ctrl+Shift+?。


关键字与保留字

关键字
JavaScript定义了一组具有特定用途的关键字,这些关键字可用于表示语句的开始或者结束、或执行特德操作等。也就是说,定义变量名、函数名或对象名是不能使用这些名称。

保留字
JavaScript除了定义了一组关键字,还定义了一组同样不能作为变量名、函数名或对象名的保留字。保留字可能会在将来作为新的关键字出现的。


字符集
字符集就是各种文字和符号的总称,包括各国的文字、标点符号、图形符号、数字内容。字符集十多个字符的集合,字符集的种类繁多,每个字符集包含的字符个数不同。


变量与常量
变量
定义:变量是存储数据信息的容器。
描述:变量被认为是有名字的容器。在代码中,使用变量名为值命名,需要遵守一定的规则。
注意:1.在JavaScript代码中,必须先声明一个变量,这个变量才能被使用。

2.JavaScript中,变量是弱类型,也被称为松散类型。所谓弱类型/松散类型就是可以保存任何类型的数据。

语法结构:var 变量名称 = 变量的值;
1.定义变量,并初始化值

var v = '卧龙学苑'; /*定义变量-变量的定义,并且初始化值*/
console .log (v);/*调用变量*/

JavaScript学习第一天笔记(变量、常量、数据类型)

2.定义变量,但是没有初始化值

var v1;/*只是定义变量,没有初始化*/
console .log(v1);/*结果为undefined (未定义)*/

JavaScript学习第一天笔记(变量、常量、数据类型)

3.多个变量同时定义,变量之间用逗号分隔

var v2=100, v3=20;
console .log(v2);/*100*/
console .log(v3);/*20*/

JavaScript学习第一天笔记(变量、常量、数据类型)

4.重复定义
在JavaScript中语法是允许重复定义变量的。重复定义时,先将之前的变量在内存的空间进行销毁。

var v='卧龙学苑';
console .log(v);/*输出结果为卧龙学苑*/
var v=100;
console .log (v);/*输出结果为100*/

5.重复的赋值

var v = '卧龙学苑';
console .log(v);/*卧龙学苑*/
var v ='100';
console .log(v);/*100*/

6.遗漏的定义
a.变量没有定义,而直接调用
结果;报错,变量名 is not defined

console .log(v);

b.只定义变量,但不初始化值
不会报错,但是输出的结果为undefined

var v1;
console .log(v1);/*undefined*/

常量
定义:常量就是一个只读(only-read)的变量。
描述:常量与变量类似,同样用于存储数据信息。只是常量的数据一旦被定义,便不能被修改。
注意:1.常量名习惯使用全大写的形式。

2.ECMAScript5新增了声明常量使用的关键字const。
  3.如果省略const关键字,JavaScript会认为是一个变量。
  4.如果重复赋值就会报错 TypeError:Assignment to constant variable.
  5.重复定义(常量或者变量)就会报错 SyntaxError:Identifier '变量名'has already been declared

在定义常量或者变量时,可以省略修饰符(var或const),省略后定义的默认为变量。(不建议使用)
常量在定义时,必须要初始化值。如果之定义不初始化值,就会报错:SyntaxError: Missing initializer in const declaration

常量与变量的区别
变量
1.定义变量使用var关键字
2.定义变量建议使用小写
3.变量允许重复定义或重复赋值
4.变量允许只定义,但不初始化值
5.变量的值允许改变
常量
1.定义常量使用const关键字
2.定义常量建议使用大写
3.常量不允许重复定义或者重复赋值
4.常量必须定义并初始化值
5.常量的值不允许改变


数据类型
定义:在JavaScript代码中,能够表示并操作的值的类型称之为数据类型。

数据类型的分类
1.原始类型(又称原始值)
2.引用类型(又称内置对象)
3.包装类型
4.特殊类型
(包装类型可以分到引用类型中,特殊类型可以分到原始类型中)

原始类型的概述
原始类型,又称为原始值,是直接代表JavaScript语言实现的最低层的数据

一.number类型(整数和浮点数)
在JavaScript中,不区分整数与浮点数

var num =100;
console .log(num);/*100*/

浮点类型

var num1 = 0.1;
console .log(num1);/*0.1*/

var num2 = .1;
console .log(num2);/*0.1*/

var num3 = 10.1;
console .log(num3);/*10.1*/

var num4 = 10.0;
console .log(num4);/*10*/

var num5 = 10.;
console .log(num5);/*10*/

在JavaScript中,.1可以表示为0.1(不推荐使用),10.0表示成10,10.会被表示成10。

浮点类型计算的误差

number类型中的小数,在计算中可能会出现误差
1.并不是所有的小数计算都会出现误差。
2.在小数计算时,注意结果的是否出现误差。
解决方法:通过数字值的计算,将其转换成整数进行计算,再将结果转换为小数。

NaN
NanN是number类型中存在的特殊值
含义:表示当前值不是一个数字值。
类型:依旧是number类型。
特点: NaN与任何值(包括自身)都不相等。

var num = Number ('卧龙学苑');
console .log (num);/*NaN*/

无穷大(正无穷大;负无穷大)
1.无穷大与另一个无穷大是不相等的。
2.一个无穷大减去另一个无穷大不等于零。

var num = 98/0;
console .log(num);/*Infinity*/

二.string类型
JavaScript中字符串就是由单引号或双引号包裹的,单引号与双引号没有任何区别,建议使用单引号。

var str1 = '卧龙学苑';
var str2 = "卧龙学苑";
console .log(str1);/*卧龙学苑*/
console .log(str2);/*卧龙学苑*/

如果文本本身需要单引号或者双引号
1.如果需要的是双引号,字符串只能使用单引号
2.如果需要的是单引号,字符串只能使用双引号

var str3 = '"卧龙学苑"';
var str4 = "'卧龙学苑'";
console .log(str3);/*"卧龙学苑"*/
console .log(str4);/*'卧龙学苑'*/

转义字符
string类型包含一些特殊的转义字符,用于表示非打印字符。

三.boolean类型
布尔(boolen)类型只有两个值1.true 2.false(均为小写)

var boo1 = true;
console .log(boo1);/*ture*/

如果大写活着大小写混合,JavaScript识别为另一个变量名称。


typeof运算符
如何判断变量的值的类型?使用typeof运算符(只能使用在原始类型中)
语法结构:typeof 变量名称
结果:原始类型的名称(名称是string类型)

var num = 100;
var boo = true;
var str = '卧龙学苑';

console.log(typeof num);// number
console.log(typeof boo);// boolean
console.log(typeof str);// string

包装类型
概述:对应原始类型提供了包装类型,通过包装类型可以创建原始类型的对象。

一.Number类型
Number类型是一种构造函数方式

var num1 = new Number(100);
console.log(num1);/* [Number: 100] */

二.String类型

var str1 = new String('卧龙学苑');
console.log(str1);/*[String: '卧龙学苑']*/

三.Boolean类型

var boo1 = new Boolean(true);
console.log(boo1);/*[Boolean: true]*/

instanceof运算符

instanceof运算符用于判断引用类型(只能用于包装类型)

console.log(str instanceof String);// true

typeof运算符与instanceof运算符的区别

typeof运算符
  1.用于判断原始类型
  2.语法结构不同 -> typeof 变量名称
  3.得到结果不同 -> 原始类型的名称
 instanceof运算符
  1.用于判断引用类型(包装类型)
  2.语法结构不同 -> 变量名称 instanceof 引用类型名称
  3.得到结果不同 -> 布尔类型的值(true或false)

特殊类型(undefined与null)
undefined表示空的数据类型,但是在内存中依旧占有空间

null
作用:用于将指定变量从内存中进行释放
实现:将指定变量的值赋为null
null类型中只存在一个值(null)

相关推荐