JS课堂笔记(4.11-4.16)
一、简单了解JS1. JavaScript(简称JS)是作为开发Web页面的脚本语言。
2. JS是从1995年由网景公司的布兰德开发。
3. JavaScript的标准是ECMAScript。
4. JS代码是从上往下执行的。
二、变量
1. 变量名的值可以重复赋值(值可以修改),变量可以重复声明。
2. JS中“+”号很特殊,只要是和字符串相加都会变成字符串。
3. var声明(var n = 1;),其中var是声明关键字,n是变量名字,=是赋值号,1是值。
4. 变量规范:①名字可以包含字母,数字,_,$。 ②名字不能以数字开头,严格区分字母大小写。 ③名字不能使用关键字保留字。比如,var、if、for、in等。
5. JavaScript是轻量级解释型语言。
6. JS必须写在html页面里的script标签内,script标签一旦使用src加载了外部JS文件后,这个script标签里就不能写JS语句了。
7. JS有3种书写方式:行内式、内嵌式、外部式
8. 警告框:alert;
输入框:prompt;(输入框里的内容永远都是字符串)
问询框:confirm
9. 变量作用域:使用var声明的变量表示是局部变量,它的有效范围是当前作用域。
10. 特殊数值
JavaScript定义了几个特殊的数值常量:
①Infinity:无穷大。当数值超过浮点型所能够表示的范围;反之,负无穷大为-Infinity,可以说无穷大表示数值达到了计算机理解不了的位数(长度)。
②NaN:非数值。不等于任何数值,包括自己。如当0除以0时会返回这个特殊值,一般出现在其他值想要转化成数字的时候,有的值是无法转成数字的用NaN表示。
③Number.MAX_VALUE:js中最大的数字1.7976931348623157e+308
④Number.MIN_VALUE:5e-324
三、数据类型
1.基本/基础/原始/简单数据类型:
null:表示空值,不占据计算机的存储空间
undefined:表示变量定义了但未赋值
number:数字类型
string:字符串类型
boolean:布尔值类型(只有两个值,true和false)
2.null和undefined的区别是什么?
null表示值是空的;undefined表示变量已定义但未赋值
3.使用var和不使用var声明的变量有什么区别?
var声明的变量只在当前作用域生效
不使用var声明的变量全局生效
4.JS的特性之一:变量提升。将变量的声明提升至当前JS文件的最顶部。变量提升只是将声明提升,值留在原地。
目的是为了减少非标准使用下的报错。
5.JS的另一个特性——单线程,遇到报错就停止。
6.字符串必须使用单引号或双引号
字符串可以是空的字符串
字符串双引号或单引号里可以嵌套另外一种字符串的引号
字符串里空格也是占位的
7.获取字符串的长度:console.log(变量名.length)
8.“\n”表示换行;“\”转义符
四、判断数据类型
1.typeof:语法 typeof 变量名
null和数组类型会被判断为object,NaN会被判断为number。
2.constructor:语法 变量名.constructor
constructor是object的原型属性。undefined和null没有constructor属性,不能够直接读取,否则会报错。
3.toString:语法 toString()
toString可以检测所有数据类型,它能够返回当前对象的字符串表示。
4.测试发现,不同类型对象调用toString()方法时返回的字符串格式并不统一,这是因为不同类型的子类在继承object的原型方法toString时重写了该方法。如果在对象上调用object的原型方法toString(),就会返回统一格式的字符串表示。例如:
var a = 1;
var b = "你好";
var c = null;
console.log(object.prototype.toString.apply(a));
表示为“”
5.数据类型转换:隐式转换和显示转换
隐式转换:js自己做的类型转换。+,-,*,/,%等都是隐式转换。
显示转换:Number、toString、Boolean等js里内置的类都是显示转换。
6.转换为小数格式字符串:toFixed()
能够把数值转换为字符串,并显示小数点后的指定位数
7.parseInt是一个全局方法,它可以把值转换为整数。转换的过程如下:
①先解析位置0处的字符,如果不是有效数字,则直接返回NaN
②如果位置0处的字符是数字,或者可以转换为有效数字,则继续解析位置1处的数字,如果不是有效数字,则直接返回位置0处的有效数字。
③以此类推,按照从左到右的顺序,逐个分析每个字符,知道发现非数字字符位置。
④parseInt()将把前面分析合法的数字字符全部转换为数值并返回。
注意:浮点数中的点对于parseInt()来说属于非法字符,因此不会转换小数部分的值。
8.parseFloat()也是一个全局方法,它可以把数值转换为浮点数,即它能够识别第一个出现的小数点,而第二个小数点被视为非法。解析过程与parseInt()方法相同。
9.简单类型和引用类型:js中把数据分为简单类型值和引用类型值
简单类型值:存储在栈内存中,按值访问,可直接访问,访问速度快,占据空间小。
引用数据类型:存储在堆内存中,由多个值组成的数据我们称为引用数据类型(object,array),占据空间大,按共享访问。
五、运算符
1.表达式一定会有返回值:return
2.①“+、-、*、/、%” 数字运算符
②“>”大于号,求前面的值是否大于后面的值。
③“=”大于等于号,求前面的值是否大于等于后面的值。
⑤“
页:
[1]