typescript 数据结构

typescript filter和map的区别

let arr=[3,5,17,15,4,14];

let res2=arr.filter((item,index,array)=>{

return item>5;

});

console.log(res2) //[ 17, 15, 14 ]

map()方法返回的结果是:[ false, false, true, true, false, true ]

map() 的结果只是对当前元素调用函数后,将符合条件boolean类型值返回给到新的数组

filter() 会将结果为true的数组值存到新的数组里面。

TypeScript 遍历数组的方法有哪些?

TypeScript继承自JavaScript,因此可以使用JavaScript中的所有数组遍历方法,包括:

作者:独行客

链接:https://www.zhihu.com/question/589874216/answer/2944983366

来源:知乎

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

  1. for循环

可以使用传统的for循环遍历数组。例如:

复制代码
const arr: number[] = [1, 2, 3, 4, 5];

for (let i = 0; i < arr.length; i++) {
  console.log(arr[i]);
}
  1. forEach()方法

可以使用forEach()方法遍历数组,它接受一个回调函数作为参数,回调函数接受三个参数:当前元素的值、当前元素的索引和数组本身。例如:

复制代码
const arr: number[] = [1, 2, 3, 4, 5];

arr.forEach((value, index, array) => {
  console.log(value);
});
  1. map()方法

可以使用map()方法遍历数组,它接受一个回调函数作为参数,回调函数返回一个新的数组,新数组的元素是根据原数组的元素经过处理后得到的。例如:

复制代码
const arr: number[] = [1, 2, 3, 4, 5];

const newArr = arr.map((value, index, array) => {
  return value * 2;
});

console.log(newArr);
  1. filter()方法

可以使用filter()方法遍历数组,它接受一个回调函数作为参数,回调函数返回一个布尔值,表示当前元素是否应该被包含在新的数组中。例如:

复制代码
const arr: number[] = [1, 2, 3, 4, 5];

const filteredArr = arr.filter((value, index, array) => {
  return value % 2 === 0;
});

console.log(filteredArr);
  1. reduce()方法

可以使用reduce()方法遍历数组,它接受一个回调函数作为参数,回调函数接受四个参数:累加器、当前元素的值、当前元素的索引和数组本身。回调函数返回的值作为下一次调用回调函数的累加器的值。例如:

复制代码
const arr: number[] = [1, 2, 3, 4, 5];

const sum = arr.reduce((accumulator, currentValue, currentIndex, array) => {
  return accumulator + currentValue;
}, 0);

console.log(sum);

还有其他一些数组遍历方法,如some()every()find()findIndex()等,它们的使用方法与上述方法类似,根据实际需求选择适合的方法即可。

变量var let const的区别

JavaScript 中可以通过关键字 varletconst 来声明变量,当然 TypeScript 中同样也可以。

这三种声明变量的方式各有不同,如下所示:

  • 使用 var 关键字声明变量,其作用于为该语句所在的函数内, 且存在变量提升现象。
  • let 的声明类似于 var,但是它的作用域为该语句所在的代码块内,不存在变量提升。注意它们一个是函数内,一个是代码块内,代码块就是直接使用 {} 括起来的代码。
  • constlet 的一个扩展,它可以防止重新分配变量,一般用来声明常量,在后面出现的代码中不能再修改常量的值。

typescript项目中引入汉字转拼音js

typescript项目中引入汉字转拼音js_逆袭的菜鸟X的博客-CSDN博客

相关推荐
IT_陈寒7 分钟前
Java性能优化:从这8个关键指标开始,让你的应用提速50%
前端·人工智能·后端
天生我材必有用_吴用9 分钟前
Vue3+Node.js 实现大文件上传:断点续传、秒传、分片上传完整教程(含源码)
前端
摸鱼的春哥25 分钟前
前端程序员最讨厌的10件事
前端·javascript·后端
牧羊狼的狼4 小时前
React 中的 HOC 和 Hooks
前端·javascript·react.js·hooks·高阶组件·hoc
知识分享小能手6 小时前
React学习教程,从入门到精通, React 属性(Props)语法知识点与案例详解(14)
前端·javascript·vue.js·学习·react.js·vue·react
luckys.one6 小时前
第9篇:Freqtrade量化交易之config.json 基础入门与初始化
javascript·数据库·python·mysql·算法·json·区块链
魔云连洲6 小时前
深入解析:Vue与React的异步批处理更新机制
前端·vue.js·react.js
mCell6 小时前
JavaScript 的多线程能力:Worker
前端·javascript·浏览器
weixin_437830948 小时前
使用冰狐智能辅助实现图形列表自动点击:OCR与HID技术详解
开发语言·javascript·ocr
超级无敌攻城狮8 小时前
3 分钟学会!波浪文字动画超详细教程,从 0 到 1 实现「思考中 / 加载中」高级效果
前端