• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

超级飞燕

  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

JS语法

JS语法 JS语法 JS的三大核心 JS的输出语法 JS注释 JS的变量 JS的数据类型 数据类型检测 数据类型转换 运算符 分支语句

JavaScript 语法

JS 的三大核心

ECMAScript
BOM
DOM

JS 的输出语法

alert()
console.log()
document.write()

JS 注释

单行注释 Ctrl+/
多行注释 Ctrl+shift+/

JS 的变量

定义一个名字,来代表一个值
在运算的过程中,用来保存一个中间值
语法:let 变量名=值,const 变量名=值

变量命名规则
规则
	1,只能由 数字 字母 下划线 美元符 组成
	2,不能由数字开头
	3,严格区分大小写
	4,不能使用关键字或者保留字
规范
	1,不要用中文
	2,变量语义化
	3,驼峰命名法

JS 的数据类型

基本数据类型
	1,number数值
	2,string 字符串
	3,Boolean 布尔
	4,undefined 空
	5,null 空
	symbol
		ES6 引入了一种新的原始数据类型,表示独一无二的值。
复杂数据类型
	object
	array
	function

复杂数据类型

对象 Object

是JS的一个复杂数据类型
用来存储一堆数据
以键值对的形式进行存储
定义对象
	1,字面量定义
	2,内置构造函数定义
对象的操作语法
	1,点语法
	2,数组关联语法
	两种语法的区别
		数组关联语法可以使用变量,可以拼接字符串
循环遍历
	for in 循环

数据类型的存储

1,基本数据类型直接存储在栈里
2,复杂数据类型 数据存储在堆里,地址存储在栈里

数据类型赋值的区别

1,基本数据类型赋值后两个变量没有关系了
2,复杂数据类型复制以后,两个变量操作一个空间

数组 Array

JS的数据类型的一种
复杂数据类型
按照索引进行排序的
操作
	length
		表示数组长度
			读
			写
	索引
		表示数组里面每一个数据的“序号”
		读写的属性
			读
			写
	for循环进行遍历

数据类型检测

typeof  用来检测基础数据类型的运算符
	1,typeof 变量
	2,typeof(变量)
	局限性:数组,正则,null,对象   全部返回object
instanceof    检测一个实例是否属于某个类
	  console.log(arr instanceof Array);  //true
	  console.log(arr instanceof Object);  //true
	  console.log(reg instanceof RegExp);  //true
	  console.log(reg instanceof Object);  //true
	局限性:不能用于检测和处理字面量方式创建出来的基本数据类型值。只要在当前实例的原型链上的对象,我们用其检测出来都为true
constructor   构造函数
	  console.log(num.constructor == Number);//true
	  console.log(obj.constructor == Object);//true
	(1).constructor === Number;    //true
	({}).constructor === Number;  //true
	局限性:我们可以把类的原型进行重写,在重写的过程中很可能把之前constructor给覆盖了,这样检测出来的结果就是不准确的
Object.prototype.toString.call()  原型链上的Object对象的toString方法
	返回当前方法的执行主体(方法中的this)所属类的详细信息,是最全面也是最常用的检测数据类型的方式。
	console.log(Object.prototype.toString.call(1));          //[object Number]
	  console.log(Object.prototype.toString.call(/^sf/));        //[object RegExp]
	  console.log(Object.prototype.toString.call("hello"));      //[object String]
	  console.log(Object.prototype.toString.call(true));        //[object Boolean]
	  console.log(Object.prototype.toString.call(null));        //[object Null]
	  console.log(Object.prototype.toString.call(undefined));      //[object Undefined]
	  console.log(Object.prototype.toString.call(function() {}));    //[object Function]
	  console.log(typeof(Object.prototype.toString.call(function() {})));    //string

数据类型转换

转数值
	1,number()
	2,parseint()
	3,parsefloat()
	4,取正负值
	5,非加法的数学运算
转字符串
	1,string()
	2,tostring
	3,加号进行字符串拼接
转布尔
	1,Boolean()

运算符

数学运算符
	1,+
	2,-
	3,*
	4,/
	5,%
	6,**
赋值运算符
	1,=
	2,+=
	3,-=
	4,*=
	5,/=
	6,%=
比较运算符
	1,>
	2,<
	3,>=
	4,<=
	5,==
	6,===
	7,!=
	8,!==
逻辑运算符
	1,&&
	2,||
	3,!
自增自减
	1,++
	2,--

分支语句

if语句
	1,if(){}
	2,if(){}else{}
	3,if(){}       else if(){}
	4,if(){}      else if(){}      else{}
switch语句
	switch(变量){
	case 情况1:
		情况1满足的代码
		break
	case 情况2:
		情况2满足的代码
		break
	dedault:
		所有情况都不满足的时候执行的代码
}
	注意
		1,case只有变量是===关系时,才算满足
		2,只能判断一个准确的值,不能判断范围
		3,break可以不写,不写会穿透
		4,break穿透,从第一个满足条件的case开始穿透
		5,default可以写可以不写,不写就是没有条件满足时没有代码执行

循环语句

	循环必要条件
		初始化
		条件判断
		重复执行代码
		改变初始条件
	循环语法
		while
			while(条件){重复执行的代码}
		do while
			do{重复执行的代码}while(条件)
		for
			for(初始化;条件判断;改变初始条件){重复执行的代码}
	循环控制语句
		break
			直接结束当前循环
		continue
			结束本次循环,继续下一次
		JS标记语句
			结束到标记指定位置
			语法

posted on 2022-03-31 22:18  超级飞燕  阅读(98)  评论(0)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3