javascript运算符与对象

本文详细介绍了JavaScript的基础知识,包括数据类型(如String、Number、Boolean、Null、Undefined和Object)、数据类型的转换方法(如toString()、String()、Number()和Boolean()函数)以及运算符的使用,如算数运算符、关系运算符、逻辑运算符、赋值运算符和条件运算符。此外,还涵盖了流程控制语句(顺序、分支、循环结构)以及对象的概念,包括属性的添加与读取、内建对象、宿主对象和自定义对象。最后讨论了基本数据类型与引用数据类型的内存区别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一JavaScript知识点罗列:

  1. 字面量、变量、标识符
  2. JavaScript的6种数据类型:

   基本数据类型:String字符串类型Number数值类型Boolean布尔类型

                 Null空值类型Undefined未定义类型

   引用数据类型:Object对象类型

  1. JavaScript数据的强制类型转换:

  主要是将其他数据类型转为String Number Boolean.

将其他数据类型转换为String类型

方法一:

       -调用被转换数据类型的toString()方法

       -该方法不会影响原变量,它会将转换的结果返回

       -注意:null和undefined这两个值没有toString()方法,如果调用该方法程序会报错

方法二:

       -调用Sting()函数,并将并将被转换的数据作为参数传递给函数

       - 使用String()函数做强制类型转换时,对于Number Boolean实际上是调用的toString()方法。但是对于null和undefined.

就不会调用toString()方法。

它会将null直接转换为”null”(字符串)

它会将undefined直接转换为”undefined”(字符串)

将其他数据类型转换为Number类型

使用Number()函数

     -字符串-->数字

  1. 如果是纯数字的字符串,则可以直接转换为数字
  2. 如果字符串中有非数字或者是一个全是空格的字符串,则转换为0

-布尔值-->数字       true转换为1  false转换为0

-null-->数字0

-undefined-->NaN

第二种方式是:

  - 这种方式专门用来对付字符串类型

-parselnt()把一个字符串转换为一个整数

-parseFloat()把一个字符串转换为一个浮点数

其他数据类型转换为Boolean类型

使用Boolean()函数

-数字-->布尔  除了0和NaN是false,其余的全部都是true

-字符串-->布尔  除了空串是false,其余的全都是true

-null和undefined都会转换为false

-对象也会转换为true

可以使用运算符typeof检测数据类型

语法:typeof变量

 

 

二JavaScript 运算符:

1.算数运算符:

+加

可以对两个值进行加法运算 ,如果是两个字符串则进行拼接

任何值和字符串做加法运算,都先转为字符串,然后再和字符串做拼接操作

算数运算符

也可以通过”+”完成隐式转换。

 

—减

可以对两个值进行减法运算,并返回运算结果

 

*乘

可以对两个值进行乘法运算,并返回运算结果

 

/除

可以对两个值进行除法运算,并返回运算结果

 

%取模

取模运算(取余数)

++自增

--自减

 

关系运算符:

> 大于

>=大于等于

<小于

<=小于等于

==表示相等的意思

!=表示不等的意思

===全等(数据类型与值都相等)

!==不全等

运算的结果为布尔值

 

逻辑运算符

JS中为我们提供了三种逻辑运算符

!非

-!可以用来对一个值进行非运算

所谓非运算就是对一个布尔值进行反操作

false变为true, true变为false

-如果对一个值(布尔值)进行2次非运算,它的值不变

-如果对非布尔值进行运算,则先将它转换为布尔类型,再取反操作

  利用这一特点,可以将一个值转换为布尔类型:两次非运算

 

&&与

-&&可以对符号两侧的值进行运算并返回结果

运算规则:两个值只要有一个false,则返回false

           两个值都是true的情况下,返回false

||或

   -||可以对符号两侧的值进行或运算并返回结果

   运算规则:两个值只要有一个true,则返回true

             两个值都是false的情况下,返回false

 

赋值运算符

JavaScript赋值运算

=赋值符

   可以将符号右侧的值赋值给左侧的变量

+=

    num+=2=>等价于num=num+2;

-=

    num-=2 =>等价于 num=num-2;

*=

        num*=2 =>等价于 num=num*2;

/= 

    num/=2 =>等价于 num=num/2;  

%=

    num%=2 =>等价于 num=num%2;

 

条件运算符

条件运算符也叫做三元运算符

-语法:条件表达式?

-执行的的流程:

 条件运算符在执行时,首先对表达式进行求值。

  如果该值为true,则执行语句1,并返回执行结果

  如果该值为false,则执行语句2,并返回执行结果

  2.JavaScript运算符的优先级

JS中的优先级就跟我们数学中的优先级一样,

比如在数学中:先乘除 再加减 有括号先算括号里面的

算术操作符   → (关系运算符)比较操作符 → 逻辑操作符 → "="赋值符号

 (+,-,*,/,++,--,%)     (<,>,==,===,<=,>=,!=)           (&&,||,!)     (=,+=,-=,..)

3.JavaScript流程控制语句

什么是流程?

程序中的三种基本流程结构:

  1. 顺序结构
  2. 分支结构
  3. 循环结构

顺序结构:按照顺序一条一条的执行代码,从上到下。

分支结构:执行代码的时候,可以根据条件进行选择,条件越多对应的结果越多,分支也就越多。例如if…else…语句,switch语句

循环语句:用来重复不断的做一件事,for循环,while循环,do…while循环

4.JavaScript对象

对象属于一种复合的数据类型,在对象中可以存储多个不同数据类型的属性

对象的分类:

1.内建对象

- 由ES标准中定义的对象,在任何ES的实现中都可以使用

  例如:Math String Number Boolean Function Object...

2.宿主对象

- 由JS的运行环境提供的对象,目前来讲主要指由浏览器提供的对象

- 比如:BOM(浏览器对象模型)  DOM(文档对象模型)

  例如 我们常用的console.log() 就是DOM 中的对象

3.自定义对象

- 由咱们开发人员自己定义的对象

 

使用new关键字调用的函数,是构造函数constructor

构造函数是专门用来创建对象的函数

var obj=new Object();//创建对象

 

在对象中保存的值称为属性:

向对象添加属性的语法: ①对象.属性名=属性值 ② 对象["属性名"]=属性值

读取对象属性的语法: ①对象.属性名 ②对象["属性名"]

- 注意:如果对象中没有的属性,不会报错而是返回undefined

重要!!!对象的属性值可以是任意的数据类型

 

属性名:

对象的属性名不强制要求遵守标识符规则

什么名称都可以,但是不允许这里使用,我们自己定义的使用都必须遵守标识符规则

 

in运算符

通过该运算符检查一个对象中是否含有指定的属性

如果含有则返回true,如果没有则返回false

语法 :"属性名" in 对象

 

 

 

5.JavaScript基本数据类型与引用数据类型

- 基本数据类型:String Number Boolean Null Undefined

- 引用数据类型:Object

 

- JS中的变量都是保存在栈内存中的

基本数据类型的值直接在栈内存中存储,值与值之间是独立存在的,修改一个变量不会影响到其他的变量

对象是保存在堆内存中的,每创建一个新的对象,就会在堆内存中开辟新的空间,而变量保存的是对象的内存地址(对象的应用),如果两个变量保存的是同一个对象引用,当其中一个通过变量修改属性时,另外一个也会受到影响。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值