当前位置:首页 > JavaScript

js实现矩阵

2026-01-31 23:14:08JavaScript

矩阵的创建与初始化

在JavaScript中,矩阵可以通过二维数组实现。创建一个3x3的零矩阵:

const matrix = [
  [0, 0, 0],
  [0, 0, 0],
  [0, 0, 0]
];

动态初始化NxM矩阵:

function createMatrix(rows, cols, defaultValue = 0) {
  return Array.from({ length: rows }, () => 
    Array.from({ length: cols }, () => defaultValue)
  );
}
const myMatrix = createMatrix(2, 3); // 2行3列的零矩阵

矩阵基本运算

矩阵相加:

function addMatrices(a, b) {
  return a.map((row, i) => 
    row.map((val, j) => val + b[i][j])
  );
}

矩阵转置:

js实现矩阵

function transpose(matrix) {
  return matrix[0].map((_, colIndex) => 
    matrix.map(row => row[colIndex])
  );
}

矩阵乘法实现

矩阵乘法需要满足第一个矩阵的列数等于第二个矩阵的行数:

function multiplyMatrices(a, b) {
  const result = [];
  for (let i = 0; i < a.length; i++) {
    result[i] = [];
    for (let j = 0; j < b[0].length; j++) {
      let sum = 0;
      for (let k = 0; k < a[0].length; k++) {
        sum += a[i][k] * b[k][j];
      }
      result[i][j] = sum;
    }
  }
  return result;
}

特殊矩阵生成

生成单位矩阵:

function identityMatrix(size) {
  return Array.from({ length: size }, (_, i) =>
    Array.from({ length: size }, (_, j) => 
      i === j ? 1 : 0
    )
  );
}

生成对角矩阵:

js实现矩阵

function diagonalMatrix(diagonal) {
  const size = diagonal.length;
  return Array.from({ length: size }, (_, i) =>
    Array.from({ length: size }, (_, j) => 
      i === j ? diagonal[i] : 0
    )
  );
}

矩阵实用操作

获取矩阵行列数:

const rows = matrix.length;
const cols = matrix[0].length;

矩阵克隆:

const cloned = matrix.map(row => [...row]);

矩阵打印:

function printMatrix(matrix) {
  matrix.forEach(row => console.log(row.join(' ')));
}

标签: 矩阵js
分享给朋友:

相关文章

js实现跳转

js实现跳转

使用 window.location 跳转 通过修改 window.location.href 或直接使用 window.location 实现页面跳转,适用于普通跳转或带参数的 URL。 // 方…

vue实现js休眠

vue实现js休眠

Vue 中实现 JavaScript 休眠 在 Vue 中实现 JavaScript 休眠通常需要使用异步方式,以避免阻塞主线程。以下是几种常见方法: 使用 setTimeout 和 Pro…

js实现vue

js实现vue

Vue.js 简介 Vue.js 是一个渐进式 JavaScript 框架,用于构建用户界面。其核心库专注于视图层,易于与其他库或现有项目整合。 实现 Vue.js 的基本步骤 安装 Vue.…

js实现全屏

js实现全屏

实现全屏的基本方法 使用JavaScript实现全屏功能主要依赖Element.requestFullscreen()方法。现代浏览器均支持此API,但不同浏览器可能需要添加前缀。 // 触发全屏…

js实现验证

js实现验证

验证表单输入 使用JavaScript验证表单输入是常见的需求。可以通过监听表单提交事件,检查输入字段是否符合要求。 document.getElementById('myForm').addEv…

js实现列表

js实现列表

使用 JavaScript 实现列表 JavaScript 提供了多种方式来实现列表功能,包括数组操作、DOM 元素动态生成等。以下是几种常见的实现方法: 使用数组存储列表数据 数组是 JavaSc…