初步了解JavaScript--基本数据类型

1. 什么是JavaScript?

JavaScript(简称js)是一种具有函数优先,解释型或即时编译型的编程语言。JavaScript是一种基于原型编程、多范式的动态脚本语言,并且支持面向对象、命令式和声明式(如函数式编程)风格。

2、JavaScript的常用执行环境

  • 浏览器
  • Node.js
  • Apache

3. JavaScript的特点

  • 是一门解释型语言
  • 是一门弱类型语言
  • 从上至下顺序解析执行

4. JavaScript的组成

  • ECMAScript,描述了该语言的语法和基本对象
  • 文档对象模型(DOM),描述了处理网页内容的方法和接口
  • 浏览器对象模型(BOM),描述了与浏览器进行交互的方法和接口

ECMAScript

ECMAScript 6(简称ES6)是于2015年6⽉正式发布的JavaScript语⾔的标
准,正式名为ECMAScript 2015(ES2015)。
ECMAScript,兼容性100%,是JavaScript的语法和基本对象组成(核心js)。
组成部分:

注释//、 /**/
变量
操作符
流程控制语句
数组
对象
正则表达式
函数

DOM:Document Object Model文档对象模型

js操作html的API,是针对XMl但经过扩展用于HTML的应用程序编程接口。DOM将整个页面映射成一个多节点结构。

var dom=document.getElementsByTagName(“input”);
var dom=document.getElementById(“input_name”);

BOM:Browser Object Model 浏览器对象模型

js操作浏览器的API,开发人员可以使用BOM 控制浏览器显示的页面以外的部分。
常用于控制浏览器的操作:

alert();
prompt();
confirm();

5. 在html5使用JavaScript的方法:

  • 在HTMl结构中,使用外部引入法,单独新建一个后缀名为.js的js文件,引入如下:
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <!-- head标签内 script引入js代码 src放入相对路径-->
    <script src="./02-helloJS.js"></script>
    
</head>
<body>
   
</body>
</html>
  • 内部插入js代码:
    方法1:在head标签中插入script标签,在script标签中写入js代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <!-- head标签内 编写js代码 -->
    <script>
        //编写js代码
    </script>
</head>
<body>
   
</body>
</html>

方法2:在body中使用script标签,在script标签中写入代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <!-- head标签内 编写js代码 -->
</head>
<body>
     <!-- body标签内 编写或引入js代码 -->
     <script>
        //编写js代码
    </script>
</body>
</html>

在body和head标签中编辑js代码的区别:
在body部分中的javaScript会在页面加载的时候被执行,在head部分中的javaScript代码在被调用的时候才被执行。
浏览器解析HTML结构是从上自下的,如果把JavaSc代码放在head中,首先会被解析,而body的页面结构还没解析,会返回控空值,导致一些页面效果出不来。如果想在head标签中插入代码,可以把代码放在页面一个浏览器加载函数中,如下:

windows.onload = function(){
	// 这里放执行的代码
}

6.关键字和保留字

关键字:(在js中有特殊功能)

break do try typeof
case else new var
catch finally return void
continue for switch while
debugger this function with
default if throw instanceof
delete in
保留字:(将来可能成为关键字)

abstract enum int short
boolean export interface static
byte extends long super
char final native synchronized
class float package throws
const goto private transient
debugger double implements protected
volatile import public

7. 数据类型

数值类型:String字符串、数字Number、布尔(Boolean)、空Null、未定义Undefined、Symbol(ES6引入的一种新的原始数据类型,表示独一无二的数据类型)
引用数据类型:对象Object、数组Array、函数Function
面试题常问:

  • == 和 === 的区别:
    ==,判断两边的值是否相等,如果两边值的类型不一致,先转换类型为同一类型再比较
    ===,判断两边的值和类型是否相等,先判断类型是否相等再判断值,类型不一致直接返回false

  • 什么是深拷贝和浅拷贝?
    首先我们需要知道栈区存放的是基本数据类型的变量和值,而引用数据类型存放在栈区的是变量和引用地址,引用数据类型的值放在堆区中。如下图:
    在这里插入图片描述
    深拷贝,值的复制拷贝;浅拷贝,引用地址的拷贝

8、typeof 类型判断

        用于判断变量名的数据类型
        语法:typeof 变量名
        返回值有:string、number、boolean、undefined、function、object
        特殊判断类型
console.log(typeof null); //object 
//js数据类型都是由32位得二进制数组成 
//判断前三位二进制数  000 000
  • isNaN 判断是否为一个数字
var a = 10/'a';
isNaN(a);    //true
  • isFinite 判断是否一个有效值
var a = 10/0 ;
isFinite(a)   // false
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值