javascript基础知识大集锦(一) 推荐收藏

欢迎来到“Javascript基础知识大集锦(一) 推荐收藏”的攻略。这篇文章本身短小精悍,囊括了Javascript基础知识的各个方面。本文内容包括但不限于变量、数据类型、运算符、流程控制语句、函数、面向对象编程、ES6等内容。下面我将详细讲解每个部分的内容。

变量与数据类型

Javascript是一门弱类型语言,所以变量的类型可以在声明时指定,也可以在赋值时自动推断。Javascript支持的数据类型有:

  • Number(数字)
  • String(字符串)
  • Boolean(布尔值)
  • Null(空值)
  • Undefined(未定义)
  • Object(对象)

下面是一个声明变量的例子:

// 声明一个数字类型变量
let a = 100;

// 指定变量类型为字符串
let b: string = "hello"

// 未赋值时类型默认为undefined
let c

// 声明一个对象类型变量
let d = {
  name: 'Jack',
  age: 20
}

// 声明一个布尔类型变量
let e: boolean = true

运算符

Javascript支持的运算符有:

  • 算术运算符(加、减、乘、除、求余等)
  • 比较运算符(小于、大于、等于、不等于)
  • 逻辑运算符(与、或、非)

以下是示例代码:

// 算术运算符示例
let a = 2;
let b = 3;
let c = a + b; // 加法
let d = a - b; // 减法
let e = a * b; // 乘法
let f = a / b; // 除法
let g = b % a; // 求余

// 比较运算符示例
let x = 4;
let y = 5;
let z1 = x > y; // 大于
let z2 = x < y; // 小于
let z3 = x >= y; // 大于等于
let z4 = x <= y; // 小于等于
let z5 = x == y; // 等于
let z6 = x != y; // 不等于

// 逻辑运算符示例
let m = true;
let n = false;
let p = m && n; // 并且
let q = m || n; // 或者
let r = !m; // 取反

流程控制语句

Javascript支持的流程控制语句有:

  • if语句
  • switch语句
  • for循环
  • while循环
  • do…while循环
  • break语句
  • continue语句

以下是示例代码:

// if语句示例
let score = 90;
if (score >= 60) {
  console.log("及格");
} else {
  console.log("不及格");
}

// switch语句示例
let fruit = "apple";
switch (fruit) {
  case "apple":
    console.log("这是一个苹果");
    break;
  case "banana":
    console.log("这是一个香蕉");
    break;
  default:
    console.log("这不是一个水果");
}

// for循环示例
for (let i = 0; i < 5; i++) {
  console.log(i);
}

// while循环示例
let j = 0;
while (j < 5) {
  console.log(j);
  j++;
}

// do…while循环示例
let k = 0;
do {
  console.log(k);
  k++;
} while (k < 5);

// break语句示例
for (let i = 1; i <= 10; i++) {
  if (i == 5) {
    break;
  }
  console.log(i);
}

// continue语句示例
for (let i = 1; i <= 10; i++) {
  if (i == 5) {
    continue;
  }
  console.log(i);
}

函数

Javascript中的函数使用function关键字来定义,可以传入参数和返回值。可以使用箭头函数(Arrow Function)简写函数定义方式。

以下是示例代码:

// 函数示例
function sum(a, b) {
  return a + b;
}

let result = sum(3, 4);
console.log(result);

// 箭头函数示例
let add = (a, b) => a + b;
let result2 = add(3, 4);
console.log(result2);

面向对象编程

Javascript通过Object构造函数和装饰器(Decorator)等方式,支持面向对象编程。面向对象编程中的重点是封装、继承和多态。

以下是示例代码:

// 封装示例
class Person {
  constructor(name, age) {
    this.name = name;
    this.age = age;
  }

  sayHello() {
    console.log(`大家好,我是${this.name},我今年${this.age}岁了。`);
  }
}

let p = new Person("张三", 18);
p.sayHello();

// 继承示例
class Student extends Person {
  constructor(name, age, grade) {
    super(name, age);
    this.grade = grade;
  }

  sayHello() {
    super.sayHello()
    console.log(`我是${this.grade}年级的学生。`);
  }
}

let s = new Student("李四", 20, 2);
s.sayHello();

ES6

ES6(ECMAScript6)是Javascript的一种新的语法规范,包含了许多新特性,例如:

  • 块级作用域
  • 模板字符串
  • 解构赋值
  • 箭头函数
  • Promise对象
  • Class关键字

以下是示例代码:

// 块级作用域示例
function test() {
  let a = 1;
  if (true) {
    let a = 2;
    console.log(a); // 2
  }
  console.log(a); // 1
}

// 模板字符串示例
let name = "张三";
console.log(`你好,${name}`);

// 解构赋值示例
let arr = [1, 2, 3];
let [x, y, z] = arr;
console.log(x, y, z); // 1 2 3

// 箭头函数示例
let add = (a, b) => a + b;
console.log(add(3, 4)); // 7

// Promise对象示例
let p = new Promise(function(resolve, reject) {
  setTimeout(function() {
    resolve('Promise 已被解决');
  }, 1000);
});
p.then(function(value) {
  console.log(value);
});

// Class关键字示例
class Animal {
  constructor(name) {
    this.name = name;
  }

  sayHello() {
    console.log(`我是${this.name}`);
  }
}

let cat = new Animal("小猫");
cat.sayHello();

以上就是本文的全部内容,涵盖了Javascript基础知识的各个方面。希望本文可以对你有所帮助,如果有任何问题或意见,请随时与我们联系。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:javascript基础知识大集锦(一) 推荐收藏 - Python技术站

(0)
上一篇 2023年5月19日
下一篇 2023年5月19日

相关文章

  • JavaScript中扩展Array contains方法实例

    下面是完整的攻略及示例。 扩展JavaScript中Array contains方法 在JavaScript中,Array原型对象已经提供了很多有用的方法,如push()、pop()、shift()、unshift()等。但是,有些时候我们可能需要自定义一些方法来满足特定的需求,而扩展contains()方法就是其中一个例子。 JavaScript中的Arr…

    JavaScript 2023年5月27日
    00
  • vue+axios 前端实现登录拦截的两种方式(路由拦截、http拦截)

    vue+axios 前端实现登录拦截的两种方式 在使用Vue开发前端项目时,通常会使用axios进行后端接口调用,而在实现用户登录后,我们通常需要对未登录的用户进行拦截,以保护系统的安全性。接下来将讲解如何使用Vue+axios实现前端登录拦截的两种方式:路由拦截和http拦截。 方式一:路由拦截 步骤一:创建全局路由守卫 在Vue项目主入口文件中,通过Vu…

    JavaScript 2023年6月11日
    00
  • ES6中的Promise对象与async和await方法详解

    ES6中的Promise对象与async和await方法详解 在ES6之前,JavaScript的异步编程需要使用回调函数,这种方式常常导致代码难以阅读和维护。ES6引入Promise对象和async/await方法,使得异步编程更加易于理解和控制。 Promise对象 Promise对象是ES6提供的一种异步编程的解决方案,是一个代表一个异步操作的最终结果…

    JavaScript 2023年5月28日
    00
  • 小程序tab页无法传递参数的方法

    小程序tab页无法传递参数是因为tab页在切换时不会重新加载,也就无法获取新的参数。解决这个问题的方法有多种,下面将提供两条示例说明。 方法1:使用全局变量传参 在小程序的app.js文件中定义一个全局变量globalData,用于存储需要传递的参数,然后在tab页的onLoad生命周期函数中获取这个参数即可。 代码示例: // app.js App({ g…

    JavaScript 2023年6月11日
    00
  • JavaScript 函数语法详解

    JavaScript 函数语法详解 在JavaScript中,函数也被称为一等公民,因为它们可以像任何其他值(数字,字符串等)一样进行操作。函数可以接受参数和返回值,并且可以在任何位置声明或调用。下面是JavaScript函数的语法: function functionName(parameters) { // 函数体 return returnValue;…

    JavaScript 2023年5月18日
    00
  • 浅谈JS验证表单文本域输入空格的问题

    让我详细讲解一下“浅谈JS验证表单文本域输入空格的问题”的完整攻略。 1. 问题描述 在表单验证过程中,我们通常需要验证用户提交的表单数据是否符合要求,而其中一个常见的问题就是输入框中是否包含空格。考虑到空格的数量和位置可能会影响字符串的含义,因此需要特殊处理空格的情况。 2. 解决方案 在验证表单输入时,我们需要对输入框中的空格进行判断,并在必要时进行处理…

    JavaScript 2023年6月10日
    00
  • JS中Array数组学习总结

    以下是关于“JS中Array数组学习总结”的完整攻略: JS中Array数组学习总结 概念 数组是一种有序的数据集合,是JavaScript中最重要的数据类型之一。数组可以通过索引访问、插入和删除其中的元素。 声明数组 数组的声明方式有两种,分别是字面量方式和构造函数方式。 // 字面量方式 let arr1 = [1, 2, 3, 4, 5]; // 构造…

    JavaScript 2023年5月27日
    00
  • JS 字符串连接[性能比较]

    下面是关于JS字符串连接的完整攻略: 什么是字符串连接? 字符串连接是指将多个字符串拼接成一个新的字符串的过程。在JS中,有多种方法可以进行字符串连接,比如用+运算符,使用模板字符串等。不同的方法会对性能造成不同的影响。 性能比较 String Concatenation性能测试显示,使用不同的方式进行字符串连接,性能会有很大的差别。 基于这个事实,我写了两…

    JavaScript 2023年5月28日
    00
合作推广
合作推广
分享本页
返回顶部