web前端2021--小白进阶之路JS基础

web前端2021–小白进阶之路JS(1)

JS基础–学习一门编程语言的基本步骤:
(1)了解背景知识:历史,现状,特点,应用场景
(2)搭建开发环境,编写Hello world
(3)变量和常量
(4)数据类型
(5)运算符
(6)逻辑结构
(7)通用小程序
(8)函数和对象
(9)第三方库和框架

题库:程序员必做50题
https://wenku.baidu.com/view/af66e2f14afe04a1b071de42.html
推荐书籍:《JavaScript高级程序设计》第三版

1、JS的应用场景
开发浏览器端的交互效果(前端)
创建web服务器,操作数据库等(后端)
2、JS的开发环境

  • 浏览器–浏览器中自带JS解释器
  • 服务器–安装Node.js,含有V8引擎的JS解释器(node -v 查看node.js版本号)
  • 运行JS
    浏览器端:创建01.js和01.html两个文件,把js文件嵌入到html文件中
<script src="01.js"></script>

服务器端:在cmd下,node C:/xampp/…/01.js 回车

一、变量

  • 使用var关键字声明变量
  • 变量命名规则:可以使用字母、数字、下划线,美元符号,不能以数字开头,不能使用js中关键字,不推荐使用中文。
  • 驼峰命名法:userName 下划线命名法:user_name
  • 变量赋值: var d;(此变量只声明未赋值,则保存的值为undefined)
  • 一次声明多个变量:var b1=1,b2=2,b3=3;

二、常量
保存的是不可变化的值,声明变量必须赋值。
const pi=3.14;
三、数据类型(检测数据类型typeof)

  • 数值型:整型,浮点型

整型:
1,2,3,4,5…7,8,9,10 十进制
1,2,3,4,5…7,10,11,12 八进制 以0开头的数字,例如011 -> 9
1,2,3,4,5…7,8,9,a … f 10 十六进制 以0x开头的数字,其中af代表1015,例如 0xf -> 15 其中的字母不区分大小写

浮点型:
3.14
3140 3.14*10^3 指数形式 3.14e3

0.00314 3.1410^-3 指数形式 3.14e-3
31.4
10^-4

  • 字符串型:被引号包着的数据就是字符串型

如何查看任意字符的Unicode码?
‘a’.charCodeAT()

  • 布尔型:true/false

  • 未定义型:undefined

  • 空:null (类型是object,常和引用类型一起使用)
    四、数据类型的转换

  • 隐式转换
    1)数值型+字符串型 数值型转为字符串型
    2+‘3’ -> ‘23’
    加号(+)表示字符串之间拼接
    2)数值型+布尔型
    2+true ->3
    2+false ->2
    3)字符串型+布尔型 布尔型转为字符串型
    ‘2’+true ->‘2true’
    4)减乘除的隐式转换
    如果运算符的两端不是数值,都自动转为数值型

练习:

var a=1,b=true,c='tedu';
console.log(a+b+c);//'2tedu'
console.log(b+c+a);//'truetedu1'
console.log(c+a+b);//'tedu1true'

注意:
JS中加号的作用
执行加法运算
执行字符串的拼接,前提是加号的两端至少有一个数据是字符串型

总结:
隐式转化中,如果加号中出现字符串,则数据转为字符串类型,其他情况都是自动调用Number函数转为数值型。

  • 强制转换
    1)强制转为数值型
    Number()
Number('3') //3
Number('3a')  //NaN
Number(true)  //1
Number(undefined) //NaN
Number(null)  //0

2)强制转为整型
parseInt() 常用于将小数或者字符串转为整型,其他都是返回NaN,如果要转换的字符串中以数字开头,则返回整数部分。4;
如果要转化的字符串中以非数字开头,则返回NuN

parseInt(10.5)//10
parseInt('5.1a')//5
parseInt('a5')//NaN

3)强制转为浮点型
parseFloat() 他的用法和parseInt几乎一致,只是常用于将字符串转为浮点型

'3.14'//3.14
'5.9a'//5.9
'a5.9'//NaN
'5a'//5.0

4)强制将数值和布尔型转字符串

toString 
var num=5;
var num1=num.toString();//把转换后的保存到新变量

五、运算符
表达式是由数据或者数据连接的运算符所组成的形式。
分为6大类:
算术运算符:比较运算符;逻辑运算符
位运算符: 赋值运算符;三目运算符

  • 算数运算符
+	 -	 *	 /	 %	 ++	 --	
/*
%:取余
++:自增
--:自减
var d=c++; 先把c的值赋给d,然后又再执行自增
var f=++e;先让e执行自增,再把自增的结果赋给f
*/
  • 比较运算符
> < >= <= == != === !==
// ===不仅比较值,还比较类型
// == 只比较值,比较的是首歌字符的Unicode码

3>'10'     数字和字符串比较,字符串转为数字
'3' > '10'   字符串比较,比较的是首个字符的Unicode码

3>'10a'
3<'10a'
3=='10a'
//以上3个钟10a隐式转为NaN,而NaN和任何值比较
(> 	<	>=	  <=	  ==	  !=	 === 	!==)
都返回false,甚至两个NaN比较是否相等也是false
  • 逻辑运算符
&& || !
/*
&&	并且,关联的两个条件都是true,结果是true,否则false
||	或者,关联的两个条件有一个为true,结果是true,否则false
!	非,取反
*/

短路逻辑:

&& ||
/*
并且(&&),如果第一个条件为false,不再执行第二个条件
或者(||),如果第一个条件为true,不再执行第二个条件
*/

练习:

查看以下程序是否报错
var num=3;
num>5 && console.log(a); //false
  • 位运算符
& |
/*
按位与(&):上下两位都是1,否则是0
按位或(|):上下两位含有1,结果是1,否则是0

//练习:
3&5  //->1//先把3和5转为二进制,分别为01
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值