JS01

251 阅读2分钟

这是我参与11月更文挑战的第2天,活动详情查看:2021最后一次更文挑战

js简介

  • js是一种运行在客户端的脚本语言
  • 脚本语言不需要编译,运行过程中由js解释器逐行进行解析和执行(即读一行翻译一行)
  • 也可以基于node.js技术进行服务端编程

js的浏览器执行

  • 渲染引擎:用来解析HTML和CSS,俗称内核,比如chrome浏览器的blink,老版本的webkit
  • JS引擎:也称JS解释器。用来读取网页中的javascript代码,对其进行处理

浏览器本身不会执行js代码,而是通过内置javascript引擎来执行js代码。js引擎执行代码时逐行解释每一句源码,然后计算机去执行。

js组成

ECMAScript:js语法 DOM:页面文档对象模型 BOM:浏览器对象模型

ECMAScript

是由ECMA国际进行标准化的一门编程语言,这种语言在万维网上应用广泛,它往往被称为javascript或者jscript,但实际后两者是ECMAScript语言的实现和扩展。

js三种书写位置:行内 内嵌 外部

  1. 行内
例如:
<input type="button" value="点我试试" onclick="alert('HELLO WORLD')" />
  • 可以将单行或少量js代码写在html标签的事件属性中(以on开头的属性),如:onclick
  • 注意单双引号的使用:在html中推荐使用双引号,js中推荐使用单引号
  • 可读性差,在html中编写js大量代码时候,不方便阅读
  • 引号易错
  • 特殊情况下使用
  1. 内嵌
<script>
    代码部分
</script>
  1. 外部js文件
<script src="my.js"></script>

输入输出语句

方法说明归属
prompt浏览器弹出输入框,用户可以输入浏览器
alert浏览器弹出警示框浏览器
console.log浏览器控制台打印输出信息浏览器

变量

本质:内存中申请一块存放数据的空间

声明变量
    var a=18;
    var a='yruhb';
    var a='李木子';
    var a=prompt('请输入变量值');
    console.log(a);
    alert(a);
    var a=18, address='teyf';
  • 变量只声明不赋值会出现undefined
  • 不声明不赋值直接使用会报错
  • 不声明直接赋值可以,但不提倡

简单数据类型

数字型

  • js八进制前面加0,十六进制前面加0x
  • js中数值的最大和最小值
    • alert(Number.MAX_VALUE)
    • alert(Number.MIN_VALUE)
  • isNaN() 判断一个变量是否为非数字,不是数字返回true 是数字返回false
  • Infinite 表现为无穷大,大于任何数值
    -Infinite 表现为无穷小,小于任何数值
    NaN 表示一个非数值