初识JS

176 阅读5分钟

js的介绍

js是什么

  • js是一种运行在客户端的脚本语言,用来给HTML页面增加动态功能
  • 浏览器就是一种运行在js脚本语言的客户端

js的组成

  • JavaScript 是由 ECMAScript Dom 和 Bom 三者组成
    1. ECMAScript 是 对 JvavScript 语言的一种语法规范
    2. Dom 是一种文档对象模型(节点)
      • 有一套成熟的可以操作 ==页面元素的 API==,通过 DOM 可以操作页面中的元素。比如: 增加个 div,减少个 div,给 div 换个位置等
        • DIV span
        • API: 翻译,应用程序编程接口 别人写好的代码,或者编译好的程序,提供给你使用,就叫作API
    3. Bom 是浏览器对象模型
      • 有一套成熟的可以操作 ==浏览器的 API==,通过 BOM 可以操作浏览器。比如: 弹出框、浏览器跳转、获取分辨率等

js的三种书写形式

  • 行内式
<input type="button" value="按钮" onclick="alert('hello world')" />
  • 内嵌式
<body>
    <script>
        alert('hello world')
    </script>
</body>
  • 外链式
<script src="xxxx.js"></script>

js 定义变量

变量是什么

  • 变量是计算机内存中存储数据的标识符,根据变量名称可以获取到内存中存储的数据

为什么定义变量

  • 存储一个东西,方便后续使用

怎么定义变量

  • 关键字 空格 变量
var a;

变量赋值

  • 初始未设值时默认值为 undefined(未定义)
var a = 100
  • 关键字 变量名(自定义) 赋值号 值(自定义)

变量命名规则

  • 由数字、字母、下划线、$符号组成,数字不能开头
var box = 100
var a$ = 100
var a1 = 100
var 1a = 100 (错误写法)
var big-box = 100 (中划线,class名可以,变量名不行) === 错误写法
var big_box = 100 (下划线,class名可以,变量名也可以)
  • 字母区分大小写
  • 不能是关键字和保留字
    • 保留字是 E5 不是关键字, E6 成为关键字
var var = 100 (错误写法)
  • 驼峰命名法
var bigBox = 100

两个单词拼接时,第二个单词的首字母大写

console.log

  • 在浏览器控制台打印一些 我们想要的 值。
  • 语法 : console.log(我们想要的值)
var a = 100
console.log(a)  (将变量 a 的值打印在控制面板)
console.log(100)
console.log('梦想从这里起飞')   (打印文本时,需要使用引号包裹,单引号双引号均可)
console.log('box')  (打印单词时,需要使用引号包裹,单引号双引号均可)
console.log(a)  浏览器看到的是  undefined   (浏览器先读取 var a; 并未给 a 赋值导致)
console.log(box)    浏览器看到的是  undefined   (浏览器先读取 var box; 并未给 box 赋值导致)

var a = 'abc'
var box = 123

console.log(a)  浏览器看到的是  abc
console.log(box)    浏览器看到的是  123

js中值的类型

基础数据类型(简单数据类型)

  • Number 数字类型
    • 不区分整数、浮点数、特殊值,都是 Number 类型
  • string 字符串类型
    • 需要使用引号包裹
  • undefined undefined类型
    • undefined本身就是一个数据,表示未定义,变量只声明不赋值时,值的默认值
  • null null类型
    • null本身就是一个数据,表示空
  • Boolean 布尔类型
    • 只有 true 和 fales 两个值(必须是小写字母)

复杂数据类型(引用数据类型)

  • object类型

数据类型检测

  • 为什么要有数据类型检测?
    • JS语言是一门动态类型的语言,变量并没有一个单独的数据类型,而是会随着内部存储数据的变化,数据类型也会发生变化
    • 变量的数据类型,与内部存储数据有关
    • 将来使用变量时,需要知道内部存储的数据是什么类型,避免程序出错
  • 使用 typeof 的方法进行数据检测
    • 检测方式:在 typeof 后面加小括号执行,将要检测的数据放在小括号内部

数据类型转换(转数值 / 转字符串 / 转布尔)

转数值

  1. Number(数据)方法
    • 转型函数Number()可以用于任何数据类型,将其他数据类型转为数字
    • 字符串:纯数字字符串转为对应数字,空字符串和空白字符串转为0,非空非纯数字字符串转为NaN
    • 布尔值:true转为1,false转为0
    • undefined:转为NaN
    • null:转为0
  2. parseInt()方法:字符串转整数方法
    • 对浮点数进行取整操作
      • 对数字取整直接舍弃小数部分,只保留整数
    • 将字符串转为整数数字
      • 将字符串转为整数数字,也包含取整功能
    • 字符串中,必须是纯数字字符串或者数字字符开头的字符串,才能转换为正常数字,且只取整数部分
    • 如果不是数字打头的字符串,会转换为NaN
  3. parseFloat()方法:字符串转浮点数方法
    • 将字符串转为浮点数数字
    • 满足浮点数数字字符必须在字符串开始,如果不在开始返回值都是NaN

转字符串

  1. 变量.toString()方法
  2. String(变量)方法,有些值没有toString(),这个时候可以使用String()。比如undefinednull
  3. + 号拼接字符串方式
    • num + “” ,当 + 两边一个操作符是字符串类型,一个操作符是其他类型的时候,会先把其他类型转换成字符串在进行字符串拼接,返回字符串

转布尔

  1. Boolean(变量)方法
    • 转型函数Boolean()可以用于任何数据类型,将其他数据类型转为布尔类型的值
    • 转为false:NaN、0、“”空字符串、null、undefined
    • 转为true:非0 非NaN数字、非空字符串