一.JS概念
avaScript(简称 “JS”)是一种具有函数优先的轻量级、解释型或即时编译型的编程语言。
1.特点:
客户端脚本语言
JavaScript 通常在客户端(如浏览器)中运行,用于实现网页的动态交互效果。它可以响应用户操作,如点击按钮、输入文本等,并实时更新网页内容,而无需重新加载整个页面。例如,当用户在网页上点击一个按钮时,JavaScript 可以捕获这个事件,并执行相应的操作,如显示一个弹出窗口、更新页面上的某个元素等。解释型语言
JavaScript 是一种解释型语言,这意味着它不需要经过编译过程就可以直接在运行环境中执行。浏览器内置的 JavaScript 解释器会逐行读取和执行 JavaScript 代码。这种特性使得 JavaScript 的开发和调试相对快速和方便,开发者可以在浏览器的开发者工具中实时查看代码的执行结果,并进行调试。动态类型
JavaScript 是一种动态类型语言,变量的类型在运行时确定,而不是在编译时确定。这意味着开发者可以在不同的时间将不同类型的值赋给同一个变量。例如,一个变量可以先存储一个数字,然后存储一个字符串,而不需要在代码中明确声明变量的类型。面向对象和函数式编程
JavaScript 支持面向对象编程(OOP)和函数式编程(FP)两种编程范式。在面向对象编程方面,JavaScript 可以创建对象、定义类和继承等。例如,可以使用构造函数和原型链来创建对象,并实现继承关系。在函数式编程方面,JavaScript 提供了函数作为一等公民的特性,即函数可以像变量一样被赋值、传递和返回。这使得开发者可以使用函数式编程的技术,如高阶函数、闭包等,来编写更加简洁和可维护的代码。2.应用场景
网页开发
服务器端开发
移动应用开发
桌面应用开发
3.JS基础知识
一、变量和数据类型
变量声明
使用let、const 和 var 关键字声明变量。let 和 const 是 ES6 引入的新方式,具有块级作用域,而 var 存在变量提升且作用域相对较广。例如:let x = 10;,const y = 20;。 数据类型
基本数据类型:包括number(数字)、string(字符串)、boolean(布尔值)、null、undefined。引用数据类型:如 object(对象)、array(数组)、function(函数)。 算术运算符
如+(加)、-(减)、*(乘)、/(除)、%(取余)。 比较运算符
==(相等)、===(严格相等)、!=(不相等)、!==(严格不相等)、<(小于)、>(大于)、<=(小于等于)、>=(大于等于)。 逻辑运算符
&&(与)、||(或)、!(非)。 条件语句
if...else:根据条件执行不同的代码块。
例如:
numbers.push(6); numbers.pop(); numbers.shift(); numbers.unshift(0); const slicedArray = numbers.slice(1, 3); switch:根据不同的情况执行不同的代码块。
例如:
numbers.push(6); numbers.pop(); numbers.shift(); numbers.unshift(0); const slicedArray = numbers.slice(1, 3); 循环语句
for:用于已知循环次数的情况。例如: numbers.push(6); numbers.pop(); numbers.shift(); numbers.unshift(0); const slicedArray = numbers.slice(1, 3); while:在条件为真时重复执行代码块。例如: numbers.push(6); numbers.pop(); numbers.shift(); numbers.unshift(0); const slicedArray = numbers.slice(1, 3); do...while:先执行一次代码块,然后在条件为真时重复执行。例如: numbers.push(6); numbers.pop(); numbers.shift(); numbers.unshift(0); const slicedArray = numbers.slice(1, 3); 函数
使用function 关键字声明函数。例如: numbers.push(6); numbers.pop(); numbers.shift(); numbers.unshift(0); const slicedArray = numbers.slice(1, 3); 函数表达式 将函数赋值给一个变量。例如: numbers.push(6); numbers.pop(); numbers.shift(); numbers.unshift(0); const slicedArray = numbers.slice(1, 3); 箭头函数 ES6 引入的一种简洁的函数写法。例如: numbers.push(6); numbers.pop(); numbers.shift(); numbers.unshift(0); const slicedArray = numbers.slice(1, 3); 对象创建
使用对象字面量创建对象。例如: numbers.push(6); numbers.pop(); numbers.shift(); numbers.unshift(0); const slicedArray = numbers.slice(1, 3); 访问对象属性 使用点表示法或方括号表示法。例如: numbers.push(6); numbers.pop(); numbers.shift(); numbers.unshift(0); const slicedArray = numbers.slice(1, 3); 数组创建
使用数组字面量创建数组。例如: const numbers = [1, 2, 3, 4, 5]; 方法常见的方法有 push(添加元素到末尾)、pop(删除末尾元素)、shift(删除首元素)、unshift(添加元素到开头)、slice(截取数组部分)等。例如: numbers.push(6); numbers.pop(); numbers.shift(); numbers.unshift(0); const slicedArray = numbers.slice(1, 3);