JS--基础(一)
# js
javaScript 诞生1995年 出现用于处理网页中的前端验证。
ECMAScript 是标准
JavaScript 是执行
javaScript 三个部分 ECMAScript ; DOM ; BOM.
特点:
-解释型语言
-类似于C和java的语法结构
-动态语言
-基于原型的面向对象
js 执行顺序 从上到下 一条一条执行
js 代码需要编写到script标签中
<script type="text/javaScript"> </script>
弹出警告框 : alert("内容")
向body中输出一个内容 :document(文档).write("写的内容")
向控制台输出一个内容 :console(控制台).log("内容")
js 虽然可以写在表情属性中,但是属于结构与行为耦合,不方便维护,不推荐
onclick 属性 :当什么被点击
<button onclick="alert("内容")"> </button>
<a href="javascript:alert("内容")"> </a>
<a href="javascript:;"> </a>
可以将js编写到外部js文件中,通过script标签引入
script标签一旦引入外部文件,就不能在编写代码了,即使编写浏览器也会忽略
<script type="text/javascript" src="js路径"></script>
//单行注释 / 多行注释 /
1.JS中严格区分大小写
2.JS中每一天语句以分号(;)结尾
3.JS中会忽略多个空格和换行,所以我们可以利用换行来对代码进行格式化
字面量 :都是一些不可改变的值 ,都是可以直接使用的,但是我们一般都不会但是我们一般不会直接使用字面量
变 量 :变量可以用来保存字面量,而且变量的值是可以任意改变的
声明变量 Var 变量
Var a ; 声明一个变量a
为变量赋值
a = 123;
Var b = 345; 声明变量时直接赋值
数据类型指的就是字面量的类型
JS中六种数据类型:
String 字符串
Number 数值
Null 布尔值
Undefined 未定义
Boolean 布尔值
Object 对象
其中 String,Number,Boolean,Null,Undefined属于基本数据类型
而Object属于引用数据类型
String 字符串 :需要使用引号引起来
在字符串中可以使用转义字符\
\" 表示 " ; \' 表示 ‘ ; \t 表示 制表符 ; \n 表示换行 ; \\表示\
Number 数值(包括整数和浮点数)
typeof 检测一个变量的类型
语法:typeof 变量
在js中表示数字最大值是:
Number.MAX_VALUE
1.7976931348623157e+308
如果使用Number超过了数字最大值,则返回一个infinity 表示正无穷 是一个字面量
NAN 是一个特殊的数字,表示Not A Number
使用typeof检查一个NAN也会返回number
在js中表示数字最大值是:
Number.MIN_VALUE
5e-324
在js中整数的运算基本可以保证精确
如果使用jd进行浮点运算,可能得到一个不精确的结果
所以千万不要使用js进行精确度的要求比较高的运算
Boolean 布尔值
布尔值只有两个,做逻辑判断
True:真
False:假
Null :用来表示为空的对象
使用typeof 检查null值返回object
Undefined :当声明一个变量但并不给他赋值时,他的值就是undefined
强制类型转换
指将一个数据类型强制转换为其他数据类型
类型转换主要指其他数据类型
String
方式一:
调用被转换数据类型的toString()方法
该方法不会改变原变量
方式二:
调用String()函数,并将被转换的数据作为参数传递给函数
Number
方式一:
使用Number()函数
字符串转数字:纯数字->直接转;非数字->转NAN;空字符->0;
布尔转数字:true->1 ;false->0
Null转数字: 数字0
undefined:数字NAN
方式二:
专门转换字符串对非字符串使用 会将其先转换为String然后在操作
parseInt() : 可以将一个字符串中的有效整数内容取出来
parseFloat(): 可以将一个字符串中的有效浮点数取出来
Boolean
使用Boolean()函数
数字转布尔:除了0和NAN,其他全部转True
字符串转布尔:除了空串,其余都是True
null和undefined都会转为false
对象也会转换为true
其他进制:
表示16进制数据,需要0x开头
表示8进制数据,需要0开头
表示2进制数据,需要以0把开头,但是不是所以浏览器都支持
向'070'这种字符串有些浏览器会当作8进制,有些会当作10进制
可以在parseInt()中传递第二个参数,指定数字的进制
运算符也叫操作符
通过运算符可以对一个或者多个值进行运算,并获取运算结果
比如:typeof就是运算符,可以来获得一个值的类型
它会将该值的类型以字符串形式返回
number string boolean undefined object
算数运算符:
当对非number的值进行运算,会将这些值转换为number转换为number在进行计算
大多数运算符 都不会对原变量产生影响
任何值和NaN 做运算结果都是NaN
+ : 加
可以对两个值做加法运算,并将结果返回
如果对两个字符串进行加法运算,则会拼串
会将两个字符串拼成一个字符串,并返回
任何的值和字符串做加法运算,都先会转换成字符串,然后在和字符串拼串
任意数据类型 + 一个 "" 即可将其转换为String
这是一种隐式的类型转换,由浏览器自动完成,实际上夜市调用String方法
- : 减
* :乘
/ :除
任何值做 - * /运算时都会自动转换为Number
可以通过 -0 *1 /1 来将其转换为Number
% :取余
一元运算符:是需要一个操作数
+ 正号
正号不会对数字产生任何影响
- 负号
负号可以对数字进行负号的取反
对于非Number类型的值
会先转Number,在运算
可以对一个其他数据类型使用+,将其转为Number