JS学习Day1

103 阅读5分钟

一.JavaScript的简介

(1)概述 javascript是一门动态的弱类型的解释型高级编译语言,它基于原型,支持面向对象和函数式编程等多种编程范式,通常称为JS

(2)作者 Brendan Eich(布兰登.艾奇)

(3)背景: JavaScript诞生于 1995年,其诞生的初衷是为了减轻服务器的压力,而在客户端提供一种表单验证的功能。最初的名字为:Mocha(摩擦),1995年9月在Netscape navigator 2.0的beta版本中改名为 livescript,同年12月份,Netscape navigator 2.0 beta3中部署时被命名为 JavaScript

(4)标准: 1996年11月,网景正式向 ECMA(欧洲计算机制造商协会)提交语言标准。1997年6月,ECMA 以JavaScript语言为基础制定了ECMAscript标准规范 ECMA_262。JavaScript成为ECMAscript最著名的实现之一。

(5)组成: JavaScript 由 ECMAscript + DOM + BOM 组成的

         (1)ECMAscript:由ECMA-262定义,提供核心的语法功能

         (2)DOM:全称为Document Bbject Model 文档对象模型,提供方为 和操作网页的IPA    

         (3)BOM:全称为 Browser Object Model 浏览器对象模型,提供与 浏览器交互的方法和接口

二.JS代码的书写位置

(1)行内式 直接写在标签上,分为a标签和非a标签写法

a.a标签写法

b.非a标签写法:例如

(2)内嵌式 可放在body或head标签内,最好放在body标签尾

(3)外链式 创建一个.js文件将js代码写入文件内,在html文件中调用时通 过调用(可调用多个js文件)

3.注释

(1)单行注释 //注释内容

(2)多行注释 /*注释内容*/

4.变量

(1)变量的定义:变量是编程语言中能够存储计算结果 或 表示值的抽象概念(在程序中保存数据的一个容器)

使用: 在JavaScript语言中变量需要先声明在使用

声明: 使用var 关键字来声明变量,如果省略 var关键字,那么该变量默认成为全局变量

作用: 记录特定的内容,并通过变量名来访问它们

原理: 当使用var关键字声明变量时,计算机会从内存中分配储存空间来存放不同类型的内容

注意:

1.一个变量名只能存储一个值

2.当再次给一个变量赋值的时候,前一次的值就被覆盖掉了

3.变量名称区分大小写(js区分大小写)

(2)命名的规范

标识符: 指的是JavaScript中变量,函数,属性的名字,在JavaScript中标识符命名的时候并不能随心所,也有对应的规则和 要求。下面就是变量命名的规范:

(1)标识符可以 使用 字母、下划线、数字 和 $符号组成

(2)标识符不能以数字开头(3)标识符区分大小写 (4)标识符不能使用JavaScript 的关键字 和保留字

(5)命名尽量保留语义,使用驼峰式命名规则由多个单词组成的时候,从第二个单词开始首字母大写

5.JS控制输出的方式

(1)输出到页面:document.write(内容)

(2)弹窗框显示:alert(内容)

(3)控制台输出:console.log(内容)

6.数据类型(两大类:基本数据类型/复杂数据类型)

1.数值类型(number)

2.字符串类型(string)

3.布尔类型(boolean)

4.null类型(null)

5.undefined类型(undefined)

复杂数据类型:数组、对象、函数、RegExp等

7.判断数据类型

两种方式:①.isNaN():判断时,会将括号里的内容通过number进行数值类型转换返回值为数值或NaN,如果为NaN则结果为true,反之为false

②typeof 变量:对变量的类型进行判断返回值为该变量的数据类型

8.数据类型的转换

1)强制转换:

①Number(变量)②parseInt(变量)3.parseFloat(变量)

4.变量.toString()(undefined和null数据类型不能使用)

5.String(变量)

6.Boolean(变量)(只有‘’,0,null,undefined,NaN转布尔值为false,其他类型数据均为true)

2)自动转换

1.除了假发以外的数学运算符

  • 运算符两边都是可运算数字才行
  • 如果运算符任何一边不是哟个可运算的数字,那么会返回NaN
  • 加法不可以用

2.使用加法运算

  • 在js里面,+ 有;两个含义
  • 字符串拼接:只要 + 的两边有任意一边是字符串,那么就会进行字符串拼接
  • 加法运算:只有 + 两边都是数字的时候,才会进行数学运算

9.js运算符

1.算术运算符

+ - * / %

2.赋值运算符

 =  += -= *= /= %=

3.关系运算符

==,===,!=,!==,<,>,<=,>=

4.逻辑运算符

  1. &&
  • 进行 且 的运算
  • 符号左边必须为 true 并且右边也是 true,才会返回 true
  • 只要有一边不是 true,那么就会返回 false
  1. ||
  • 进行 或 的运算
  • 符号的左边为 true 或者右边为 true,都会返回 true
  • 只有两边都是 false 的时候才会返回 false
  1. !
  • 进行 取反 运算
  • 本身是 true 的,会变成 false
  • 本身是 false 的,会变成 true

5)自增自减运算(一元运算符)

  1. ++
  • 进行自增运算

  • 分成两种,前置++ 和 后置++

  • 前置++,会先把值自动 +1,在返回

  • 后置++,会先把值返回,在自动+1

  1. --
  • 进行自减运算
  • 分成两种,前置-- 和 后置--
  • 和 ++ 运算符道理一样

运算符优先级从高到低

1. () 优先级最高

2 .一元(单目)运算符:++,–,!

3 .算术运算符: 先*,/,% 再+,-

4. 关系运算符:>,>=,<,<=

5 .相等运算符:== === != !==

6 .逻辑运算符:先&&,再||

7 .赋值运算符

口诀:单目算术位关系,逻辑三目后赋值