JS知识学习(第六周)

1.JS简介

  • 作用:处理网页中的前端认证,即检查用户输入的内容是否符合一定的规则。也可做一些动态效果。
  • ECMAScript是一个标准,有厂商实现,不同浏览器对该标准有不同实现:
    在这里插入图片描述
  • Java Script:
    ECMAScript(标准)DOM(通过js操作网页) BOM(通过js操作浏览器)
  • 特点:
    解释性语言;动态语言;基于原型面向对象语言

2.输入语言

  • 将js代码写进script中
  • 警告:
    在这里插入图片描述
  • document:向body中输出内容
    在这里插入图片描述console.log:向控制台输出内容
    在这里插入图片描述
  • js执行是从上往下依次执行

3.js编写位置

  • 可以将js代码编写到onclick属性中,点击按钮时,js执行(不方便)

  • 可以将js代码写进超链接的herf属性中,当点击时,会执行js代码(不方便)
    在这里插入图片描述

  • 将js写到script中

  • 将js代码编写到外部文件中,后引用(好处:可以在不同页面同时引用)

  • 注:scrip标签一旦引入外部文件,就不能在编写代码了,浏览器不显示。若需要,可在写一个scrip标签
    在这里插入图片描述

4.基本语法

  • 注释
  • js中严格区分大小写
  • js中每条语句以分号结尾(有些时候,浏览器会加分号,但有时会加错)
  • js中会忽略多个空格和换行

5.字面量和变量

  • 字面量:不可改变的量,可以直接使用
  • 变量:可以用来保存字面量,且值是可以改变的,常用。也可对字面量进行描述
  • 声明变量:在js中使用var关键字在声明一个变量

6.标识符

  • 可以自主命名的称标识符
  • 例如:变量名、函数名、属性名
  • 命名标识符须遵守规则:
    标识符可以含有字母、数字、——、$
    标识符不能以数字开头
    标识符不能是关键字和保留字
    一般采用驼峰命名法:hello Word、xxxYyyZzz

7.数据类型

  • 数据类型指的就是字面量的类型,共有六种类型:
    String 字符串(基本数据类型)
    Number 数值(基本数据类型)
    Boolean 布尔值(基本数据类型)
    Null 空值(基本数据类型)
    Undefined 未定义(基本数据类型)
    Object 对象(引用数据类型)

1.String字符串

  • 加双引号表字符串,不加表变量
  • 在js中字符串需要用引号引起来
  • 单引号、双引号都可以,但不要混用
  • 引号不能嵌套,双不能套双,单不能套单,但双可以套单,单可以套双。
  • 在字符串中可以使用\作为转义符,表示一些特殊字符时,可以用\进行转义
    " 表示"
    ’ 表示’
    \n 换行
    \t 制表符
    \ 表示\

2.Number

  • 所有数值类型都是number
  • 包括整数和浮点数(小数)
  • 可以使用运算符typeof检查变量的类型
  • 数字最大值:Number.MAX_VALUE
  • 若使用数值超过最大值,则表示infinty(正无穷),其为字面量,可直接使用
  • NAN:一个特殊数字,Not A Number 字面量
  • Number.MIN_VALUE:零以上的最小值
  • 使用js进行浮点运算,可能不精确,不要用其算精确值较高的数值

3.布尔值

  • 只有两个:true(真)false(假)
  • 主要用于逻辑判断

4.Null、 Undefined

  • Null:只有一个值,专门表示空对象。使用typeof检查null时,返回object
  • Undefined :只有一个值,声明一个变量,不赋值时,它的值就是undefind

8.强制数据类型转换

  • 只讲一个数据类型强制转换成其他数据类型
  • 类型转换主要指,见其他数据类型转换为:String Number Boolean

1. 转换为spring转换方式:

调用被转换类型的toString()方法:(null undefined 没有)
调用a的toString()方法:var b = a.toString(); a = a.toString();
调用String()函数,并将转换的数值作为参数传递给函数
将a转换为字符串(a= String(a);)

  • 注:使用String()进行转换时,对于number和 Boolean是调用toString()进行转换,对于null和undefined是直接转换为"null" “undefined”

2.转换为number

  • 专门转换字符串
    调用parseInt()可以将字符串中的有效数字提取出来,且只取整数
    调用parseFloat()也可提取字符串中的有效数字,可取小数。
  • 调用Number()函数
  • 注:如果是纯数字,则转换为数字
    若字符串是非数字,则转换为NaN
    若字符串是空串,或者全是空格的字符,转为0
    布尔转数字时,true转为1;false转为0
    Null转数字为0
    undefined转为数字NaN

3.转化为Boolean

使用Boolean()函数来将a转换为布尔值
数字转布尔,除了0和NaN,其他都是true
字符串转布尔,除了空串,其他都是true
null和undefined会转化为false
对象也会转化成true

9.其他进制的数字

  • 16进制的数字:0x开头
  • 8进制的数字:0开头
  • 2进制数字:0b开头
  • 为了让浏览器区分8进制和10进制,可以加入第二个参数
  • 例如:a=“070” a= parseInt(a,10);

10.运算符

  • 也叫操作符
  • 可以对一个或者多个值进行运算,并获取运算结果
  • typeof就是一个运算符,可以获得一个值的类型,它会将该值的类型以字符串的形式返回

1. 算数运算符:

+:对两个值进行加法运算,对非Number值转化为Number值进行运算,任何值加NaN,值为NaN;对字符串相加,则出现拼串的现象,任何值与字符串相加,则将值转化为字符串,进行拼串
-:对两个值做减法
*:对两个值做乘法
/:对两个值做除法
%:取模运算(取余数)
注:做减、乘、除法时,会自动转化为number,对非Number值转化为Number值进行运算

2.一元运算符:

+:正号,不会对数字进行改变
-:负号,对数字进行取反
(对于非number值,先转值,在运算,可以使用+将任意值转换为number)
自增、自减:
对变量自增时,原变量自动加一,自增分为++a,a++,变量值相同,但表达式的之不同。a++的值等于原变量的值,++a的值等于变量后的值
自减:–a和a–;a–的值等于原变量的值,–a的值等于变量后的值

3.逻辑运算符

!:非;可以对一个值进行非运算,对一个布尔值进行取反运算;若对非布尔值进行运算,则会先转化为布尔值,在进行运算;
&&:与;全true才为true,有false则为false,若第一个值为false则会出现短路现象,不会执行第二个值
||:或;有true则为true,全false才为false,若第一个值为true则不会检查第二个值
若为非布尔值,进行&&和||的运算时,会先转换为布尔值,在进行运算,并且返回原值。
&&运算时,若第一个值时true直接返回第二个值,若第一个值为false则直接返回第一个值
||运算时,若第一个值时true直接返回第一个值,若第一个值为false则直接返回第二个值

4.赋值运算符

=:将右侧值赋值给符号左侧的变量
+=:a=+5等价于a=a+5
-=:
*=:
/=:
%=:a%=5等价于a=a%5

5.关系运算符

比较两个值之间的大小关系,若关系成立,则返回true,若不成立,则返回false

;<;>=;<=;
非数值的情况:任何值与NAN比较都是false;对于非数值比较时,会将其转换为数字在比较;如果符号两侧的值都是字符串,不会将其转化为数字进行比较,而会分别比较字符串 的Unicode编码;比较字符编码的时候是一位一位进行,如果两位一样,比较下一位,所以借用英文进行排序;比较中文没有意义。

6.相等运算符

  • 比较两个值是否相等,相等时返回true,不等返回false()
    ”来比较两个值的,如类型不同,则会自动进行类型转换,然后再进行比较
    null不会转换为0
    undefined衍生自null,所以这两个值判断时,会返回true
    NaN不和任何值相等,包括它本身
    可以通过isNaN()函数来判断一个值是否是NaN,若是,返回true,不是,返回false

  • !=:不相等,不相等返回true,相等返回false,若类型转换后相等,则返回false

  • ===:全等,类型不同时,直接输出false

  • !==:不全等,类型不同时,直接输出false

7.条件运算符

  • 语法:条件表达式?语句1:语句2;
  • 先对条件表达式求值,若为true执行语句1,若为false,则执行语句2,并返回结果
  • 如果条件表达式的求值结果时是非布尔值,会转化为布尔值进行运算

11.Unicode编码表

在js中使用时要加“\u”,要使用16进制编码;在网页中要加“&#”,且需使用10进制编码。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值