JS 学习笔记

浏览器中有Js解释器

Js 是 解释一句执行一句的,所以报错处停止执行。

Js 是 客户端的脚本语言

浏览器输入输出

console.log('123');(console控制台和log日志)
	输出多个变量用 , 分隔即可
alert('警示框');
prompt('弹出用户输入框');
	取值为字符型(string)

变量

变量:程序在内存中申请的一块用来存放数据的空间。

变量的使用

  1. 声明

    • (用var(variable)关键字声明变量)

    • var age;
      
  2. 赋值

    • age = 18
  3. 声明一个变量并赋值,我们称之为变量的 初始化

    • var age = 18
  4. 声明多个变量,用 , 逗号隔开

    • var age1 = 18,
      	age2 = 18,
          age3 = 18
  5. 特殊的变量声明情况

    • // 只声明,未赋值
      var age;
      console.log(age);// undefined(类型为未定义)
      
      // 直接使用
      console.log(age); // 报错
      
      // 没用var关键字
      age = 18;
      console.log(age); // 18
      
  6. 变量命名规范

    • 由字母(A-Za-z)、数字(0-9)、下划线(_)、美元符号($)组成,
    • 严格区分大小写。
    • 不能以数字开头。18age是错误的
    • 不能是关键字、保留字。例如:var、for、while
    • 变量名最好有意义。age
    • 遵守驼峰命名法。首字母小写,后面单词的首字母需要大写。myFirstName

数据类型

在计算机中,不同的数据所需占用的存储空间是不同的,为了便于把数据分成所需内存大小不同的数据,充分利用存储空间,于是定义了不同的数据类型。

  • Js属于弱类型语言
  • Js是动态语言,变量的数据类型可以变化
  • Js的数据类型根据值来判断。
简单数据类型 说明 默认值
Number 数字型 包含整型值和浮点型值 如21、0.21、0
Boolean 布尔值类型 如true、false,等价于1和0 false
String 字符串类型 如注意咱们js里面,字符串都带引号 “张三”
Undefined var a;,此时a=undefined声明了变量a但是没有给值 undefined
Null vara=null;声明了变量a为空值 null

Number 数字型

  1. 八进制

    • var num = 010; (:前面加0) // 8
  2. 十六进制

    • var num = 0x10; (前面加0x) // 16
  3. Js中的最大值

    • Number.MAX_VALUE //1.7976931348623157e+308
    • Number.MIN_VALUE // 5e-324
  4. 特殊值

    • 无穷大:比最大值大 Infinity

    • 无穷大:比最大值大 -Infinity

  5. 非数字

    • NaN - 非数字 (Not a Number)
    • console.1og(‘pink老师’-10); // NaN
  6. isNaN(传参)

    • 判断非数字
      • 非数字 — 1
      • 赎罪 — 0

String 字符串类型

  1. 字符串引号嵌套(双引号单引号间隔嵌套)
    • “我’爱’你”
  2. 字符串转义字符 (均以\开头)
    • \n 换行符(n是newline的意思)
    • \\ 斜杠\
    • \' ’ 单引号
    • \" " 双引号
    • \t 制表符,tab缩进
    • \b 空格,b是blank的意思
  3. length 返回字符串长度
    • str.length
  4. 字符串的拼接 ( 字符串 + 其他类型相 = 字符串类型 )
    • console.1og(‘沙漠’ + ‘骆驼’); //‘沙漠骆驼’
      console.1og(‘pink老师’ + 18); //‘pink老师18’
      console.log(‘pink’ + true); //‘pinktrue’
      conso1e.1og(‘12’ + 12); //‘1212’

Boolean 布尔值类型

只有 true 和 false 两种


Undefined 未定义 和 Null 空值

//undefined 未定义
var v undefined;
console.log(v + 'pink'); // 'undefinedpink'
console.log(v + 1); // NaN 
undefined和数字相加最后的结果是 NaN

//null 空值
var n null;
console.log(n +'pink');// 'nullpink'
console.log(n + 1); // 1

typeof (运算符/关键字)

  • var num 10;
    console.log(typeof num); //number
    var timer null;
    console.log(typeof timer); //object
    

字面量

数组字面量 []

数字字面量 18

字符串字面量 ‘wo’

对象字面量 {}

数据类型转换

转换成字符串型

方式 说明 案例
toString() 属性 num.toString
String() 函数 String(num)
加一个字符串 隐式转换 num+’’(空值)

转换成数字型

方式 说明 案例
parselnt(string)函数 将string类型转成整数数值型 parseInt(‘78’)
parseFloat(string)函数 将string类型转成浮点数数值型 parseFloat(‘78.21’)
Number()强制转换函数 将string类型转换为数值型 Number(‘12’)
js隐式转换(- * /) 利用算术运算隐式转换为数值型 ‘12’ - 0 ‘12’ * 1(+不行)

转换成布尔型

方式 说明 案例
Boolean()函数 其他类型转成布尔值 Boolean(‘true’);
  • console.log(Boolean('')); //false
    console.log(Boolean(0)); //false
    console.log(Boolean(NaN)); //false
    console.log(Boolean(null)); //false
    console.log(Boolean(undefined)); //false
    
    //除了以上内容,其余的都为true
    console.1og(Boolean('小目'))//true
    console.log(Boolean(12));//true
    

1.标识(zhi)符
就是指开发人员为变量、属性、函数、参数取的名字。
标识符不能是 关键字保留字

2.关键字
是指S本身已经使用了的字,不能再用它们充当变量名、方法名。

3.保留字
实际上就是预留的“关键字”,意思是现在虽然还不是关键字,但是未来可能会成为关键字,同样不能使用它们当变量名或方法名。

运算符

算数运算符

运算符(operator)也被称为操作符,是用于实现赋值、比较和执行算数运算等功能的符号。

浮点数的精度问题

  • 浮点数值的最高精度是17位小数,但在进行算术计算时其精确度远远不如整数。

  • 所以:不要直接判断两个浮点数是否相等!

表达式

  • 是由数字、运算符、变量等以能求得数值的有意义排列方法所得的组合

  • 表达式最终都会有一个结果,返回给我们,我们成为 返回值

递增(减)运算符

前置递增(减)

  • 先加加,后使用
let age = 18;
num = ++age;
console.log(num); //19
console.log(age); //19

后置递增(减)

  • 先使用,后加加
let age = 18;
num = age++;
console.log(num); //18
console.log(age); //19
关系运算符
> >= <= < = == === != !==
符号 作用 用法
= 赋值 把右边给左边
== 判断 判断两边值是否相等(注意此时有隐式转换)
=== 全等 判断两边的值和数据类型是否完全相同
逻辑运算符
逻辑运算符 说明 案例
&& “逻辑与”,简称"与" and true&&false
|| “逻辑或”,简称"或” or true||false
!(取反) “逻辑非”,简称"非" not !true
短路运算(逻辑中断)

逻辑与&&短路

  • 遇假中断,返回假值,遇真继续,无假反最后值

逻辑或||短路

  • 遇真中断,返回真值,遇假继续,无真反最后值

  • let num = 0;
    console.log( 123 || ++num); (短路中断,没有运行++num)
    console.log(num); // 0;
    
赋值运算符
赋值运算符 说明 案例
= var usrName=‘我是值’: 直接赋值
+=、-= 加、减一个数后在赋值 var age 10;age+=5; //15
*=、/=、%= 乘、除、取模后在赋值 var age 2;age*=5; //10
运算符优先级
优先级 运算符 顺序
1 小括号 ()
2 一元运算符 ++、!
3 算数运算符 先*、/、% 后+、-
4 关系运算符 > >= < <=
5 相等运算符 == != === !==
6 逻辑运算符 先&& 后 ||
7 赋值运算符 =
8 逗号运算符 ,

流程控制

在一个程序执行的过程中,各条代码的执行顺序对程序的结果是有直接影响的。很多时候我们要通过控制代码的执行顺序来实现我们要完成的功能。

流程控制主要有三种结构,分别是顺序结构分支结构循环结构,这三种结构代表三种代码执行的顺序。

分支结构

if语句
  • 按照从大到小的判断思路
if(条件表达式){
    //为真执行
	//执行语句1
}else{
   
	//执行语句2    
}

//多分支语句

if(条件表达式)
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值