【 Python 全栈开发 - WEB开发篇 - 26 】Javascript 基础

news/2024/10/19 1:29:25/

文章目录

  • 一、Javascript
    • 如何学习Javascript?
    • Javascript有什么用?
    • Javascript和Java有什么区别?
  • 二、 基础语法
    • 1. 变量和数据类型
    • 2.运算符
    • 3.条件语句
    • 4.循环语句
    • 5.函数
    • 6.数组和对象
  • 三、DOM 操作
    • 1.获取元素
    • 2.修改元素属性
    • 3.添加和删除元素
    • 4.添加事件监听器
    • 5.修改CSS样式
  • 四、Ajax
    • 1.创建XMLHttpRequest对象
    • 2.发送请求
    • 3.处理响应
    • 4.使用Promise封装
  • 五、jQuery
    • 1.选择器
    • 2.事件处理
    • 3.动画效果
    • 4.AJAX
  • 六、ES6 语法
    • 1.let 和 const 声明变量
    • 2.箭头函数
    • 3.模板字符串
    • 4.解构赋值
    • 5.类和对象
    • 6.模块化
    • 7. Promise
    • 8.Generator
    • 9.扩展运算符
    • 10.Symbol
  • 七、模块化开发
    • 1.导出变量或函数
    • 2.导出默认值
    • 3.导出对象
    • 4.导入所有模块
  • 八、框架和库
  • 九、调试和性能优化


一、Javascript

Javascript 是一种动态的、基于对象的编程语言,通常用于网页的客户端脚本编程。它可以在网页上实现交互效果、动态效果、表单验证、数据处理等功能。


如何学习Javascript?

学习 Javascript 可以通过以下途径:

  • 在线教程:像 w3schools、MDN 等网站提供了详细的 Javascript 教程和示例代码。
  • 书籍:可以购买一些 Javascript 的教材,如《Javascript 高级程序设计》、《Javascript 权威指南》等。
  • 视频课程:一些在线学习平台,如慕课网、网易云课堂等也提供了 Javascript 的视频课程。

Javascript有什么用?

Javascript 在网页开发中有着广泛的应用,主要包括以下方面:

  • 网页交互:可以通过 Javascript 实现网页的动态效果、表单验证、数据处理等功能。
  • 网页优化:可以通过 Javascript 对网页进行优化,如减少 HTTP 请求、异步加载等。
  • 网页开发:可以通过 Javascript 开发一些网页应用程序,如在线编辑器、计算器等。

Javascript和Java有什么区别?

Javascript 和 Java 虽然名字相似,但是是两种完全不同的语言。主要区别如下:

  • 语言类型:Javascript 是一种脚本语言,而 Java 是一种编译型语言。
  • 运行环境:Javascript 主要运行在浏览器中,而 Java 可以运行在各种平台上。
  • 用途:Javascript 主要用于网页开发,而 Java 主要用于后端开发、移动开发、桌面应用等。
  • 语法:Javascript 的语法比 Java 简单,学习成本较低。

学习 Javascript 应包含以下方面:

  1. 基础语法:学习 Javascript 的基本语法,如变量、数据类型、运算符、循环、条件语句等。
  2. DOM 操作:学习如何使用 Javascript 操作文档对象模型(DOM),如获取元素、添加事件监听器、修改元素属性等。
  3. Ajax:学习如何使用 Javascript 发送异步请求,获取数据并更新页面的内容。
  4. jQuery:学习如何使用 jQuery 库来简化 Javascript 代码,如选择器、事件处理、动画效果等。
  5. ES6 语法:学习 ES6 新特性,如箭头函数、模板字符串、解构赋值、letconst等。
  6. 模块化开发:学习如何使用模块化开发,如CommonJSAMDES6模块化等。
  7. 框架和库:学习一些常用的 Javascript 框架和库,如ReactVueAngularBootstrap等。
  8. 调试和性能优化:学习如何使用浏览器的调试工具,如控制台、断点调试、性能分析等。
  9. 实战项目:通过实战项目来提高自己的编程能力,如制作网页动画、表单验证、数据可视化等。

二、 基础语法

Javascript 的基础语法包括以下几个方面:

1. 变量和数据类型

Javascript 的变量可以使用 varletconst 进行声明,如:

var name = 'Tom';
let age = 18;
const PI = 3.14;

Javascript 的数据类型包括字符串、数字、布尔值、数组、对象等,如:

let str = 'hello';
let num = 123;
let flag = true;
let arr = [1, 2, 3];
let obj = {name: 'Tom', age: 18};

2.运算符

Javascript 支持基本的算术运算符(+、-、*、/、%)、比较运算符(>、<、==、!=、>=、<=)、逻辑运算符(&&、||、!)等。


3.条件语句

Javascript 的条件语句包括 if 语句和 switch 语句,如:

if (score >= 60) {console.log('及格了');
} else {console.log('不及格');
}switch (day) {case 1:console.log('星期一');break;case 2:console.log('星期二');break;default:console.log('其他');
}

4.循环语句

Javascript 的循环语句包括 for 循环、while 循环、do-while 循环等,如:

for (let i = 0; i < 10; i++) {console.log(i);
}let i = 0;
while (i < 10) {console.log(i);i++;
}let j = 0;
do {console.log(j);j++;
} while (j < 10);

5.函数

Javascript 的函数可以使用 function 关键字进行声明,如:

function add(a, b) {return a + b;
}let result = add(1, 2);
console.log(result);

函数也可以使用箭头函数的形式进行声明,如:

let add = (a, b) => a + b;

6.数组和对象

Javascript 的数组可以使用[]进行声明,如:

let arr = [1, 2, 3];

数组的元素可以通过下标进行访问,如:

console.log(arr[0]); // 输出1

Javascript 的对象可以使用{}进行声明,如:

let obj = {name: 'Tom', age: 18};

对象的属性可以通过.[]进行访问,如:

console.log(obj.name); // 输出Tom
console.log(obj['age']); // 输出18

以上是 Javascript 的基础语法,掌握了这些内容,就可以开始进行 Javascript 的编程了。


三、DOM 操作

DOM(Document Object Model) 是一种用于访问和操作 HTML 文档和 XML 文档的编程接口。通过 DOM,可以使用 Javascript 来修改文档的内容、结构和样式。

DOM 操作主要包括以下几个方面:

1.获取元素

可以使用 document 对象的方法来获取 HTML 元素,如:

let element = document.getElementById('id'); // 根据id获取元素
let elements = document.getElementsByTagName('tag'); // 根据标签名获取元素
let elements = document.getElementsByClassName('class'); // 根据类名获取元素

也可以使用querySelectorquerySelectorAll方法来获取元素,如:

let element = document.querySelector('#id'); // 根据选择器获取元素
let elements = document.querySelectorAll('.class'); // 根据选择器获取元素列表

2.修改元素属性

可以使用元素的属性来修改元素的样式、内容等,如:

element.style.color = 'red'; // 修改元素的颜色
element.innerHTML = 'hello'; // 修改元素的内容

也可以使用setAttributegetAttribute方法来修改和获取元素的属性,如:

element.setAttribute('src', 'image.png'); // 修改元素的src属性
let value = element.getAttribute('data-value'); // 获取元素的data-value属性

3.添加和删除元素

可以使用createElementcreateTextNode方法来创建新的元素和文本节点,如:

let newElement = document.createElement('div'); // 创建一个新的div元素
let textNode = document.createTextNode('hello'); // 创建一个新的文本节点

可以使用appendChildinsertBefore方法来添加新的元素和文本节点,如:

parentElement.appendChild(newElement); // 在父元素末尾添加新元素
parentElement.insertBefore(newElement, referenceElement); // 在参考元素之前添加新元素

可以使用removeChild方法来删除元素,如:

parentElement.removeChild(element); // 删除元素

4.添加事件监听器

可以使用addEventListener方法来为元素添加事件监听器,如:

element.addEventListener('click', function() {console.log('clicked');
});

也可以使用on事件来添加事件监听器,如:

element.onclick = function() {console.log('clicked');
};

5.修改CSS样式

可以使用元素的 style 属性来修改元素的 CSS 样式,如:

element.style.color = 'red'; // 修改元素的颜色
element.style.fontSize = '20px'; // 修改元素的字体大小

也可以使用classList属性来修改元素的class,如:

element.classList.add('class1'); // 添加一个class
element.classList.remove('class2'); // 删除一个class

以上是 Javascript 的 DOM 操作,掌握了这些内容,就可以使用 Javascript 来修改 HTML 文档和 XML 文档了。


四、Ajax

Ajax(Asynchronous JavaScript and XML) 是一种用于创建快速动态网页的技术,可以通过 Javascript 异步发送请求,获取数据并更新页面的内容,而不需要重新加载整个页面。

Ajax 主要包括以下几个方面:

1.创建XMLHttpRequest对象

可以使用XMLHttpRequest对象来发送异步请求,如:

let xhr = new XMLHttpRequest();

2.发送请求

可以使用XMLHttpRequest对象的opensend方法来发送请求,如:

xhr.open('GET', 'http://example.com/data', true); // 打开一个GET请求
xhr.send(); // 发送请求

也可以使用POST方法发送请求,如:

xhr.open('POST', 'http://example.com/submit', true); // 打开一个POST请求
xhr.setRequestHeader('Content-Type', 'application/json'); // 设置请求头
xhr.send(JSON.stringify(data)); // 发送请求数据

3.处理响应

可以使用XMLHttpRequest对象的onreadystatechangeresponseText属性来处理响应,如:

xhr.onreadystatechange = function() {if (xhr.readyState == 4 && xhr.status == 200) {let data = JSON.parse(xhr.responseText); // 解析响应数据// 处理响应数据}
};

也可以使用XMLHttpRequest对象的onloadresponse属性来处理响应,如:

xhr.onload = function() {if (xhr.status == 200) {let data = JSON.parse(xhr.response); // 解析响应数据// 处理响应数据}
};

4.使用Promise封装

可以使用Promise来封装 Ajax 请求,如:

function request(method, url, data) {return new Promise(function(resolve, reject) {let xhr = new XMLHttpRequest();xhr.open(method, url, true);xhr.setRequestHeader('Content-Type', 'application/json');xhr.onreadystatechange = function() {if (xhr.readyState == 4) {if (xhr.status == 200) {let data = JSON.parse(xhr.responseText);resolve(data);} else {reject(new Error(xhr.statusText));}}};xhr.send(JSON.stringify(data));});
}request('POST', 'http://example.com/submit', {name: 'Tom', age: 18}).then(function(data) {console.log(data);}).catch(function(error) {console.error(error);});

以上是 Javascript 的 Ajax,掌握了这些内容,就可以使用 Javascript 来发送异步请求,获取数据并更新页面的内容了。


五、jQuery

jQuery 是一款快速、简洁的 JavaScript 库,简化了 HTML 文档遍历、事件处理、动画效果、AJAX 等操作。jQuery 的主要优点包括:

  1. 简化操作:jQuery 提供了简洁的语法和方法,可以快速地操作 HTML 文档和 CSS 样式。
  2. 跨浏览器兼容:jQuery 可以在各种主流浏览器中运行,并提供了一致的API接口。
  3. 插件丰富:jQuery拥有丰富的插件库,可以快速地实现各种功能和效果。
  4. 学习成本低:jQuery的语法和方法简单易懂,学习成本较低。

jQuery 的主要功能包括以下几个方面:

1.选择器

可以使用 jQuery 的选择器来选择 HTML 元素,如:

$('#id'); // 根据id选择元素
$('.class'); // 根据类名选择元素
$('tag'); // 根据标签名选择元素

也可以使用 jQuery 的层级选择器、属性选择器、伪类选择器等来选择元素。

2.事件处理

可以使用 jQuery 的事件处理方法来处理 HTML 元素的事件,如:

$('button').click(function() {console.log('clicked');
});

也可以使用on方法来添加事件处理函数,如:

$('button').on('click', function() {console.log('clicked');
});

3.动画效果

可以使用 jQuery 的动画效果方法来创建动画效果,如:

$('div').hide(); // 隐藏元素
$('div').show(); // 显示元素
$('div').fadeOut(); // 淡出元素
$('div').fadeIn(); // 淡入元素
$('div').slideUp(); // 上滑隐藏元素
$('div').slideDown(); // 下滑显示元素

也可以使用animate方法来自定义动画效果,如:

$('div').animate({left: '100px'}, 'slow'); // 向右移动100px

4.AJAX

可以使用 jQuery 的 AJAX 方法来发送异步请求,如:

$.ajax({url: 'http://example.com/data',type: 'GET',dataType: 'json',success: function(data) {// 处理响应数据},error: function(xhr, status, error) {console.error(error);}
});

也可以使用getpost方法来发送GETPOST请求,如:

$.get('http://example.com/data', function(data) {// 处理响应数据
});$.post('http://example.com/submit', {name: 'Tom', age: 18}, function(data) {// 处理响应数据
});

以上是 jQuery 的主要功能,掌握了这些内容,就可以使用 jQuery 来快速地操作 HTML 文档和 CSS 样式,实现各种功能和效果了。


六、ES6 语法

ES6 是 ECMAScript 2015 的简称,是 JavaScript 语言的一个重要版本,引入了许多新的语法和特性,提高了 JavaScript 的表现力和可读性。

下面是 ES6 的一些新特性:

1.let 和 const 声明变量

ES6 引入了letconst关键字,用于声明块级作用域的变量和常量。letconst的区别在于,let声明的变量可以被重新赋值,而const声明的常量不可被重新赋值。

示例代码:

// let 声明变量
let a = 1;
a = 2;// const 声明常量
const b = 1;
// b = 2; // 报错,常量不可被重新赋值

2.箭头函数

箭头函数是一种新的函数定义方式,它可以更加简洁地定义函数。箭头函数的this指向是定义时的上下文,而不是执行时的上下文。

示例代码:

// 传统函数定义
function add(a, b) {return a + b;
}// 箭头函数定义
const add = (a, b) => a + b;

3.模板字符串

模板字符串是一种新的字符串定义方式,它可以包含变量和表达式,并且可以跨行定义。模板字符串使用反引号(`)包裹,变量和表达式使用${}包裹。

示例代码:

const name = 'Tom';
const age = 20;// 传统字符串拼接
console.log('My name is ' + name + ', and I am ' + age + ' years old.');// 模板字符串
console.log(`My name is ${name}, and I am ${age} years old.`);

4.解构赋值

解构赋值是一种新的变量赋值方式,它可以从数组或对象中提取值,然后赋值给变量。解构赋值可以使代码更加简洁明了。

示例代码:

// 数组解构赋值
const arr = [1, 2, 3];
const [a, b, c] = arr;
console.log(a, b, c);// 对象解构赋值
const obj = { name: 'Tom', age: 20 };
const { name, age } = obj;
console.log(name, age);

5.类和对象

ES6 引入了class关键字,用于定义类。类可以包含属性和方法,可以继承其他类。对象可以使用简洁的语法定义,可以包含方法和计算属性。

示例代码:

// 定义类
class Person {constructor(name, age) {this.name = name;this.age = age;}sayHello() {console.log(`Hello, my name is ${this.name}, and I am ${this.age} years old.`);}
}// 创建对象
const person = new Person('Tom', 20);
person.sayHello();

6.模块化

ES6 引入了模块化的概念,可以将代码分割成多个文件,并且可以使用importexport关键字进行导入和导出。

示例代码:

// math.js
export const add = (a, b) => a + b;
export const sub = (a, b) => a - b;
// main.js
import { add, sub } from './math.js';
console.log(add(1, 2));
console.log(sub(3, 2));

7. Promise

Promise 是一种新的异步编程方式,它可以更加清晰地表达异步代码的逻辑。Promise 可以链式调用,可以使用thencatch方法处理异步操作的结果和错误。

示例代码:

const promise = new Promise((resolve, reject) => {setTimeout(() => {const num = Math.random();if (num > 0.5) {resolve(num);} else {reject('Error');}}, 1000);
});promise.then(num => console.log(num)).catch(error => console.log(error));

8.Generator

Generator 是一种新的函数类型,它可以暂停和继续执行。Generator 可以使用yield关键字暂停执行,并使用next方法恢复执行。Generator 可以用于异步编程和状态机的实现。

示例代码:

function* generator() {console.log('Start');const a = yield 1;console.log(a);const b = yield 2;console.log(b);console.log('End');
}const g = generator();
console.log(g.next());
console.log(g.next('Hello'));
console.log(g.next('World'));

9.扩展运算符

扩展运算符是一种新的操作符,它可以将数组或对象展开成多个参数。扩展运算符可以使代码更加简洁。

示例代码:

const arr1 = [1, 2, 3];
const arr2 = [4, 5, 6];
const arr3 = [...arr1, ...arr2];
console.log(arr3);const obj1 = { name: 'Tom', age: 20 };
const obj2 = { gender: 'male' };
const obj3 = { ...obj1, ...obj2 };
console.log(obj3);

10.Symbol

Symbol 是一种新的数据类型,它可以用于创建唯一的标识符。Symbol 可以用于定义对象的属性和方法名,可以避免命名冲突。

示例代码:

const name = Symbol('name');
const person = {[name]: 'Tom',age: 20,sayHello() {console.log(`Hello, my name is ${this[name]}, and I am ${this.age} years old.`);}
};person.sayHello();

七、模块化开发

JavaScript 的模块化开发是指将代码按照功能分成多个模块,每个模块独立开发、测试和维护,然后将模块组合成完整的应用程序。模块化开发可以提高代码的可读性、可维护性和可重用性,同时避免命名冲突和全局变量污染。

在 ES6 之前,JavaScript 并没有官方的模块化标准,开发者们采用了各种不同的方式实现模块化开发,如 CommonJS、AMD、CMD 等。而在 ES6 中,JavaScript 引入了官方的模块化标准,可以使用importexport关键字进行模块的导入和导出。

下面是使用 ES6 模块化开发的一些示例代码:

1.导出变量或函数

// math.js
export const add = (a, b) => a + b;
export const sub = (a, b) => a - b;// main.js
import { add, sub } from './math.js';
console.log(add(1, 2));
console.log(sub(3, 2));

2.导出默认值

// math.js
const add = (a, b) => a + b;
export default add;// main.js
import add from './math.js';
console.log(add(1, 2));

3.导出对象

// person.js
export default {name: 'Tom',age: 20,sayHello() {console.log(`Hello, my name is ${this.name}, and I am ${this.age} years old.`);}
};// main.js
import person from './person.js';
person.sayHello();

4.导入所有模块

// math.js
export const add = (a, b) => a + b;
export const sub = (a, b) => a - b;// main.js
import * as math from './math.js';
console.log(math.add(1, 2));
console.log(math.sub(3, 2));

以上是使用 ES6 模块化开发的一些示例代码,它们可以使代码更加模块化、清晰、易于维护。在实际开发中,我们可以根据项目需求和团队协作方式选择适合的模块化开发方式。


八、框架和库

JavaScript 的框架和库是用于简化和加速 JavaScript 开发的工具。框架和库的区别在于,框架是一个完整的开发框架,包含了一系列的组件和功能,而库只提供了一些特定的功能或工具。

下面是一些常用的 JavaScript 框架和库:

  1. React
    React 是由 Facebook 开发的一款用于构建用户界面的 JavaScript 框架。React 使用组件化的开发方式,可以使代码更加模块化、可重用和易于维护。React 还提供了虚拟 DOM 和单向数据流等特性,可以提高应用程序的性能和响应速度。

  2. Angular
    Angular 是由 Google 开发的一款用于构建单页 Web 应用程序的 JavaScript 框架。Angular 提供了依赖注入、模块化、数据绑定、指令等特性,可以使开发者更加方便地开发和维护复杂的 Web 应用程序。

  3. Vue
    Vue 是一款轻量级的 JavaScript 框架,它使用组件化的开发方式和虚拟 DOM 技术,可以使代码更加模块化、可重用和易于维护。Vue 还提供了指令、过滤器、计算属性等特性,可以使开发者更加方便地开发 Web 应用程序。

  4. jQuery
    jQuery 是一款流行的 JavaScript 库,它提供了简洁的 API 和跨浏览器的兼容性支持,可以使开发者更加方便地操作 DOM、处理事件、发送 AJAX 请求等。jQuery 还提供了丰富的插件和工具,可以加速 Web 应用程序的开发。

  5. Bootstrap
    Bootstrap 是一款流行的前端开发框架,它提供了预定义的 CSS 和 JavaScript 组件,可以使开发者更加方便地构建响应式 Web 页面和移动应用程序。 Bootstrap 还提供了丰富的主题和插件,可以定制化 Web 应用程序的外观和功能。

以上是一些常用的 JavaScript 框架和库,它们可以使开发者更加方便地开发、测试和维护 Web 应用程序。在实际开发中,我们可以根据项目需求和团队协作方式选择适合的框架和库。


九、调试和性能优化

调试和性能优化是 JavaScript 开发中非常重要的环节,可以帮助开发者快速定位和解决问题,提高应用程序的性能和用户体验。

下面是一些常用的 JavaScript 调试和性能优化技巧:

  1. 使用浏览器开发工具调试代码
    现代浏览器都提供了强大的开发工具,可以帮助开发者调试 JavaScript 代码、查看 DOM 结构、网络请求等。开发者可以使用开发工具中的 console、debugger 和 performance 等工具进行调试和性能优化。

  2. 使用代码检查工具检查代码质量
    代码检查工具可以帮助开发者检查代码中的潜在问题,如语法错误、未定义变量、不规范的代码风格等。常用的代码检查工具有 ESLint、JSHint 等。

  3. 避免使用全局变量
    全局变量容易引起命名冲突和代码污染,应尽量避免使用全局变量。可以使用模块化开发方式、闭包等技术来封装变量和函数。

  4. 减少 DOM 操作
    DOM 操作是 JavaScript 中比较耗时的操作,应尽量减少 DOM 操作的次数和频率。可以使用文档片段、缓存 DOM 元素等技术来优化 DOM 操作。

  5. 减少网络请求
    网络请求也是 JavaScript 中比较耗时的操作,应尽量减少网络请求的次数和大小。可以使用缓存、压缩、合并等技术来优化网络请求。

  6. 使用异步编程方式
    异步编程方式可以避免 JavaScript 阻塞和卡顿,提高应用程序的性能和响应速度。可以使用回调函数、Promise、async/await 等技术来实现异步编程。

  7. 使用性能分析工具分析性能瓶颈
    性能分析工具可以帮助开发者分析应用程序的性能瓶颈,如 CPU 占用、内存占用、网络请求等。常用的性能分析工具有 Chrome DevTools、Firefox Developer Tools 等。

以上是一些常用的 JavaScript 调试和性能优化技巧,它们可以帮助开发者提高代码质量、优化代码性能。


http://www.ppmy.cn/news/276984.html

相关文章

AudioNova傲诺瓦——你身边的助听器专家

众所周知&#xff0c;声音是由物体振动产生&#xff0c;声音只是压力波通过空气的运动&#xff0c;压力波振动内耳的小骨头&#xff08;听小骨&#xff09;&#xff0c;这些振动被转化为微小的电子脑波&#xff0c;它就是我们觉察到的声音。声音在我们的日常生活中无处不在&…

AudioNova傲诺瓦助听器,听力缺陷者的“福音”

不知道大家有没有看过电影《寂静之地》&#xff1f;对影片中佩戴助听器的听损女孩有没有印象呢&#xff1f;其实&#xff0c;这部影片能够让我们更直观地了解到听力缺陷者的无助和自卑。 比如他们在和别人交谈时&#xff0c;要别人重复&#xff0c;才能明白说话内容&#xff0c…

AudioNova傲诺瓦助听器|给你带来更专业的验配体验

相信大多数人对于助听器的理解&#xff0c;可能会更接近于耳机&#xff0c;认为在需要它的时候&#xff0c;将它佩戴好即可&#xff0c;而且在购买的时候都是立等可取。其实不然&#xff0c;大家在买助听器的时候&#xff0c;是需要先验配的哦&#xff01; 相信很多人在听到买助…

USound发布高性能ASIC线性音频放大器,提高真无线立体声装置、助听器和智能眼镜的电池寿命

针对USound 微机电系统(MEMS)扬声器的新型ASIC线性音频放大器超越市场要求&#xff0c;静态电流仅0.9 mA&#xff0c;延长了可听戴设备和可穿戴设备的播放时间。 USound是面向可听戴和可穿戴设备提供基于微机电系统(MEMS)技术的音频解决方案的领先供应商。该公司宣布推出最新的…

苹果AirPods Pro可充当助听器使用,说说蓝牙音频技术

一项研究表明 AirPods Pro 可以充当助听器使用&#xff0c;其性能不输于上万美元的高端专用助听设备。在完善无障碍服务的路线图中&#xff0c;苹果将助听功能作为 AirPods 的中期发展目标&#xff0c;而且已经取得了一些成果。 专业助听器是一种非常复杂、精密的设备&#x…

Android提高第十篇之AudioRecord实现助听器

本文来自http://blog.csdn.net/hellogv/ &#xff0c;引用必须注明出处&#xff01; Android可以通过MediaRecorder和AudioRecord这两个工具来实现录音&#xff0c;MediaRecorder直接把麦克风的数据存到文件&#xff0c;并且能够直接进行编码(如AMR,MP3等)&#xff0c;而AudioR…

【电子综合实践与创新】助听器的综合实现(二)——用 Altium Designer 进行电路设计

halo~我是bay_Tong桐小白 本文内容是桐小白个人对所学知识进行的总结和分享&#xff0c;知识点会不定期进行编辑更新和完善&#xff0c;了解最近更新内容可参看更新日志&#xff0c;欢迎各位大神留言、指点 助听器的综合实现&#xff08;二&#xff09;——用 Altium Designer …

美格信-OTC助听器测试应用笔记

1、前言 本文主要介绍&#xff1a;OTC助听器、OTC助听器测试配置、OTC助听器测试项目、OTC助听器测试架构。 2、OTC助听器概述 根据世卫组织报告&#xff0c;目前全球超过15亿人听力受损&#xff0c;对于沟通交互、社会参与以及整体健康和生活质量造成重大影响。 尽管听力损失的…