JavaScript基础入门

一、概念

一门客户端脚本语言,运行在客户端浏览器中的,每一个浏览器都有JavaScript的解析引擎,不需要编译,直接被浏览器解析执行了

二、功能

可以来增强用户和html页面的交互过程,可以来控制html元素,让页面有一些动态的效果,增强用户的体验

三、基本语法

1.与html的结合方式
1.1:内部js:定义script标签,标签体内容就是js代码
1.2:外部js:定义script标签,通过src属性引入外部的js文件
注意:
a. script标签可以定义在html页面的任何位置,但是定义的位置会影响执行顺序
b. script标签可以定义多个

2.注释
*单行注释://注释内容
*多行注释:/注释内容/

3.数据类型
*原始数据类型(基本数据类型):
1.number:数字。整数/小数/NaN(not a number 一个不是数字的数字类型)
2.string:字符串。不区别单引号双引号
3.boolean:true和false
4.null:一个对象为空的占位符
5.undefined:未定义。如果一个变量没有给初始化值,则会被默认赋值为undefined

*引用数据类型:对象

4.变量
*概念:一小块存储数据的内存空间
*Java语言是强类型语言,而JavaScript是弱类型语言,强类型在变量申请空间时需要规定类型,二弱类型不需要,所以弱类型语言变量申请之后可以改变变量存放数据的类型
*语法:var 变量名 = 初始化值; (不定义初始化值也可以)
案例:

//可以使用typeof运算符检测变量类型
<script>
			//定义number类型
			var num = 1;
			var num1 = 1.2;
			var num2 = NaN;
			document.write(num+" 的数据类型为---"+typeof(num)+"<br>");
			document.write(num1+" 的数据类型为---"+typeof(num1)+"<br>");
			document.write(num2+" 的数据类型为---"+typeof(num2)+"<br>");
			
			//定义string
			var str = "abc";
			var str2 = 'def';
			document.write(str+" 的数据类型为---"+typeof(str)+"<br>");
			document.write(str2+" 的数据类型为---"+typeof(str2)+"<br>");
			
			//定义boolean
			var flag = true;
			document.write(flag+" 的数据类型为---"+typeof(flag)+"<br>");
			
			//定义null 和 undefined
			var obj = null;  //注意null在使用typeof检测结果为object
			var obj1 = undefined;
			var obj2;//直接定义不初始化相当于定义undefined
			document.write(obj+" 的数据类型为---"+typeof(obj)+"<br>");
			document.write(obj1+" 的数据类型为---"+typeof(obj1)+"<br>");
			document.write(obj2+" 的数据类型为---"+typeof(obj2)+"<br>"); 
		</script>

浏览器页面输出如下:
在这里插入图片描述
5.运算符
*一元运算符:只有一个运算数的运算符
++(自增) --(自减) +(正号) -(负号)
注意:在js中,如果运算数不是运算符所要求的内容,那么js的引擎自动会将运算数进行类型转化,转化规则如下:
a.string转number:按照字面值转换,如果字面值不是数字,则转为NaN(不是数字的数字)
b.boolean转number:true转为1,false转为0

*算术运算符
+ - * / %…

*赋值运算符
= += -=….

*比较运算符
> < >= <= ===(全等于)
比较方式:
a.类型相同:直接比较,字符串的话按字典顺序比较,按位逐一比较,直到得出大小结果为止
b.类型不同:先进行类型转化,再比较。全等于:在比较之前,先判断类型,如果类型不一样,则直接返回false

*逻辑运算符
&& || !
注意:&&和||都有短路的特点,即表达式左边为false整个表达式值就可以确定了。使用!会出现其他类型转Boolean的情况如下:
a.number:0为假,非0为真
b.string:除了空字符串(“ ”),其他都是true
c.null和undefined:都为false
d.对象:对象都为true

*三元运算符
? :表达式
目的:简化if-else的写法,语法:表达式?值1:值2 如果表达式为true则取值1,反之取值2

6.js中的特殊语法
a.语句以分号结尾,如果一行只有一条语句则分号可以省略,但是不建议省略
b.变量的定义可以使用var关键字,也可以不使用。用var的话定义的变量为局部变量,不用的话定义的变量为全局变量,也不建议使用

本篇博客就介绍到这里,如发现错误或有疑问请及时提出

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

囿于之间

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值