javascript内容整合

目录

前端

JavaScript

    1.什么是JavaScript?

    2. JavaScript的组成

   3.JavaScript的使用

        1- 行内js

        2- 内嵌

        3- 外联

        注意:在导入的标签中不可以写入js代码

   4.JavaScript的输出方式

        1-弹框

        2- 控制台输出

        3-页面输出(可以给页面输出任何内容 )

   5.JavaScript的变量

         1.变量的作用:使用一个名字来记录一个值

         2.变量的组成:变量名、变量值、变量类型

        3.变量的声明方式:

     常见问题:

                1. let、var、const三者之间的区别?

   6.JavaScript中的数据类型     

变量类型可以分为基本数据类型和复杂(引用)数据类型。

基本数据类型和复杂数据类型之前的区别是什么?

数据类型检测的方式有哪些?


前端

  • HTML                 前端页面的框架
  • CSS                   对框架进行修饰和美化
  • JavaScript          页面的框架行为,让妞页面产生动态效果

JavaScript

    1.什么是JavaScript?

        JavaScript是一种轻量级弱类型的脚本语言,其优点就是轻量级,代码量小,占用内存小。

    2. JavaScript的组成

        ECMAScript:JS的基本语法和标准(到现在ES已经发展到14版本)

        DOM:文档对象模型----通过js操作页面中的标签

        BOM:浏览器对象模型----通过js操作浏览器

   3.JavaScript的使用

        1- 行内js

                把js的代码放到标签里面

                <button οnclick=”alert(‘你好js’)”>按钮</ button >

        2- 内嵌

                <script> alert(‘你好js’)</ script>

                注:script是双标签,可以嵌套在页面任何地方,建议放到body里面或者下面

        3- 外联

                要在页面的外面新建一个js文件,导入外部js使用script标签,可以嵌套在页面任何地方,建议放到body后面

                <script  src=”./index.js”> alert(‘你好js’)</ script>

        注意:在导入的标签中不可以写入js代码

   4.JavaScript的输出方式

        1-弹框

               alert —— 警示框/提示框,自带一个确认按钮。

               confirm —— 判断框(询问框,有确认和取消),返回Boolean值,true和false。

               prompt —— 输入框,点击取消,返回null,写了内容点取消也是null。在输入内容的情况下点击确认是string,若没有内容返回空白。

        2- 控制台输出

                console.log(‘输出的内容’)

        3-页面输出(可以给页面输出任何内容 )

                document.write(‘输出的内容’)

                

                                

   5.JavaScript的变量

         在 JavaScript 中,变量是用于存储数据值的标识符。变量可以存储各种类型的数据,如数字、字符串、布尔值、对象、数组等。JavaScript 是一种动态类型语言,这意味着变量可以在运行时改变其数据类型。   

         1.变量的作用:使用一个名字来记录一个值
         2.变量的组成:变量名、变量值、变量类型

                变量名:存储在变量中的数据,可以是原始类型或引用类型。

                变量值:变量值是存储在变量中的数据。

                变量类型:JavaScript 支持多种数据类型,变量值可以是这些类型中的任何一种。

        3.变量的声明方式:

                 1- var 变量名(声明一个变量),是最早的声明方式                           

                        变量名=变量值(给变量进行赋值)

                         简写:Var 变量名=变量值

                          eg.      var name = "张三"

                例1:

                       

                        当一个变量只定义不赋值,返回undefined

                例2:

                        

                        一个变量没有被定义直接输出,会报错,变量is  not  defined

                2- let:是ES6引入的变量声明方式,具有块级作用域

                        eg.  let name = "张三"

                3- const:是ES6引入的变量声明方式,具有块级作用域

                        eg.  const  x  = 20 

     常见问题:
                1. let、var、const三者之间的区别?

                它们三者的区别可以从变量提升、作用域、暂时性死区、是否可以重复声明等考虑。

                var:

                        具有变量提升,变量在声明之前调用,值为undefined

                        不存在暂时性死区

                        具有全局作用域或函数作用域

                        允许重复声明变量

                        可以修改声明的变量

                let:

                        不存在变量提升

                        存在暂时性死区

                        具有块级作用域

                        在同一作用域下不允许重复声明变量

                        可以修改声明的变量

                const:

                        不存在变量提升

                        存在暂时性死区

                        具有块级作用域

                        在同一作用域下不允许重复声明变量

                        只能声明一个只读的常量,常量的值一旦声明,就不能改变

             

   6.JavaScript中的数据类型     

  1. 变量类型可以分为基本数据类型和复杂(引用)数据类型。
    1. 基本数据类型:
      1. Number:数值型
      2. String:字符串型
      3. Boolean:布尔值,返回值true/false
      4. Null:表示已定义但是值为空,空值
      5. Undefined:表示未定义的,返回值也是undefined
      6. Symbol:独一无二的值
    2. 复杂数据类型:
      1. object:对象类型,表示复杂的数据结构
      2. Array:数组类型
      3. Function:函数类型
      4. Date:日期类型
      5. RegExp:正则表达式,用于匹配字符串模式
  2. 基本数据类型和复杂数据类型之前的区别是什么?
    1. Symbol、BigInt:
      1. Symbol 和 BigInt 是ES6 中新增的数据类型。
      2. Symbol 代表创建后独一无二且不可变的数据类型,它主要是为了解决可能出现的全局变量冲突的问题。
      3. BigInt 是一种数字类型的数据,它可以表示任意精度格式的整数,使用 BigInt 可以安全地存储和操作大整数,即使这个数已经超出了 Number 能够表示的安全整数范围。
    2. 两种类型的区别在于存储位置的不同:
      1. 原始数据类型直接存储在栈(stack)中的简单数据段,占据空间小、大小固定,属于被频繁使用数据,所以放入栈中存储;
      2. 引用数据类型存储在堆(heap)中的对象,占据空间大、大小不固定。如果存储在栈中,将会影响程序运行的性能;引用数据类型在栈中存储了指针,该指针指向堆中该实体的起始地址。
    3. 堆和栈的概念存在于数据结构和操作系统内存中,在数据结构中
      1. 在数据结构中:
        1. 在数据结构中,栈中数据的存取方式为先进后出。
        2. 堆是一个优先队列,是按优先级来进行排序的,优先级可以按照大小来规定。
      2. 在操作系统中:
        1. 内存被分为栈区和堆区:
        2. 栈区内存由编译器自动分配释放,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈堆区内存一般由开发着分配释放,若开发者不释放,程序结束时可能由垃圾回收机制回收。
  3. 数据类型检测的方式有哪些?
    1.  typeof():
      1. 能够检测出基本数据类型,但是对于复杂数据类型来说,使用它检测不够准确。使用typeof检测复杂数据类型,返回值为“object”。
    2. instanceof():
      1. 能够准确的检测出对象的类型。其内部运行机制是查看对象的原型链上是否有该类型的原型。
      2. 根据以下结果,能够看出instanceof可以检测复杂数据类型,但是不适用于基本数据类型
    3. constructor():
      1. constructor有两个作用,一是判断数据的类型,二是对象实例通过 constructor对象访问它的构造函数。

    4. object.prototype.toString.call():
      1. 使用 Object 对象的原型方法 toString 来判断数据类型

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值