知识整理

发布时间 2023-05-10 10:04:53作者: 無碍

JavaScript

3月2日 周四

js概述

  • 一种客户端脚本语言,以前的网速慢,现在的可以直接在网页显示处理结果,让页面有了逻辑处理功能,大大提升处理速度

  • js之所以带java,(是因为蹭java热度,与Java没关系),原本叫Netspace,现如今成为因特网的必备组件

  • html/css/JavaScript三者区别

    • HTML超文本标记语言,做页面展示
    • css是层叠样式的语言,用来辅助修饰html,让html看起来更加丰富好看
    • js是独立的编程语言,用来操作html节点以及css样式,达到网页动态效果,增强交互感
  • JavaScript是解释型语言,不需要编译,解析给浏览器,解析后被内置在浏览器软件中的JavaScript解释器解释执行

  • js和jsp(Javaserverpages,基于Java语言实现的服务器端页面)一毛钱关系没有

语言特点

  • 基于对象的编程语言,类似于c++和Java,既有对象又有过程
  • 弱类型语言:任何变量在定义时不需要指定数据类型,但有类型的概念,值决定数据类型(动态数据类型)
  • 解释性的脚本语言,不需要编译
  • 动态性,基于事件驱动,一定操作引起某些动作
  • 平台无关性,运行在浏览器里,只要安装浏览器,就能解释执行js代码;不同的浏览器对js代码解析不一样。这就是兼容性问题,
    • 解决兼容性问题使用框架或通用性代码
  • 安全性,安全是因为不允许做很多事,无法对磁盘操作

js组成

  • JS的标准名为ECMScript,一个标准(文档)

  • DOM,文档对象模型,元素对象,js可以操作对象,调用里面的属性和方法,操作网页页面(实际使用多)

  • BOM,浏览器对象模型,js能与浏览器进行对话,获取浏览器信息,操作浏览器

    • DOM和BOM关系(DOM和document都包含在window里,document很重要)
      image

浏览器和开发工具

  • 开发工具
    • 文本编辑器EditPlus,写错了没有报错 ,不推荐
    • Webstorm,集成开发工具,时Intellij IDEA开发工具中的一个插件
    • HBuilder

JS基本使用及HelloWorld

  • js代码一般放在head里或者body里

    <script></script>//标签必须成对出现,不能自闭合<script/>
    <script src="qw.js"></script>//外部引用
    

浏览器控制台的使用

基本语法

  • 定义变量:
<script>var num=1;</script>//数据类型就这一个
//甚至num=1;也可以,且是全局变量,let num=1;是局部变量
"qinhuan"//直接也可以
  • JS严格区分大小写

浏览器控制台操作

  • console.log(score) 在浏览器打印结果

  • alter()是弹窗

  • 常用的几个选项,调试须知
    image

数据类型浏览

  • 数值、文本、图形、音频、视频

    • number:NaN是不是一个数。infinity极大的一个数

    • 字符串:“abc” ’abc‘ '\n'

    • 布尔值:true false

    • 逻辑运算:&& || !

    • 比较运算:=;== 类型不一样,值一样就可以; ===绝对相等,一般用这个就行(NaN与所有数都不等包括自己,只有isNaN(NaN)这个是true

    • 尽量避免浮点运算,存在精度问题

      • 不要(1/3)===(1-2/3),改为math.abs(1/3-(1-2/3))<0.0000001
    • null;undefined未定义

    • 数组:不需要一系列相同类型的对象

      • var arr=[1,2,3,4,'hello'];允许
    • 对象使用大括号括起来

      var person={
      name:"qinjaing",
      age:23,
      tags:['js','java']	
      }
      
      • 对象的值:甚至中文都可以,不要以数字开头

严格检查模式(strict)

  • let 定义局部变量
    • let i=1;//定义局部变量
    • 'use strict'//用严格检查模式,前提是idea支持es6,写在第一行

数据类型详解