> 文章列表 > JavaScript 的基础函数有哪些?

JavaScript 的基础函数有哪些?

JavaScript 的基础函数有哪些?

1、在 JavaScript 中将数组本地转换为对象

JavaScript 有一个原生函数 Object.fromEntries,可用于将任何输入数组转换为对象。

1.const anArray = [

2. ['firstname', 'Paul'],

3. ['surname', 'Knulst'],

4. ['address', 'worldwide'],

5. ['role', 'Senior Engineer'],

6. ['followers', 'not much'],

7.];

8.

9.

10.const anObj = Object.fromEntries(anArray);

11.console.log(anObj);

12.// {

13.// firstname: 'Paul',

14.// surname: 'Knulst',

15.// address: 'worldwide',

16.// role: 'Senior Engineer',

17.// followers: 'not much'

18.// }

2、递归得到一个数的斐波那契

递归是每个软件开发者必须知道的概念!

此 JavaScript 片段显示了以递归方式实现的斐波那契函数。

1.const getFibonacci = (n, memo = {}) =>

2. memo[n] ||

3. (n <= 2

4. ? 1

5. : (memo[n] = getFibonacci(n - 1, memo) + getFibonacci(n - 2, memo)));

6.

7.

8.console.log(getFibonacci(4)); // 3

9.console.log(getFibonacci(8)); // 21

3、检查约会对象是否在周末

这个 JavaScript 片段显示了检查每个 Date 对象是否为周末是多么容易。

您可以更改周数(6 和 0)并将其替换为任何其他工作日编号以检查不同的日子。

1.const isWeekend = (date) => date.getDay() === 6 || date.getDay() === 0;

2.

3.

4.console.log(isWeekend(new Date())); // false

5.console.log(isWeekend(new Date('2022-10-28'))); // false

6.console.log(isWeekend(new Date('2022-10-29'))); // true

4、将 24 小时制时间格式转换为 am/pm

使用不同的时间格式是一件痛苦的事情。

这个简单的 JavaScript 片段显示了一个将任何 24 小时制时间转换为上午/下午时间的函数。

1.const toAMPMFormat = (h) =>

2. `${h % 12 === 0 ? 12 : h % 12}${h < 12 ? ' am.' : ' pm.'}`;

3.

4.

5.console.log(toAMPMFormat(12)); // 12 pm.

6.console.log(toAMPMFormat(21)); // 9 pm.

7.console.log(toAMPMFormat(8)); // 8 am.

8.console.log(toAMPMFormat(16)); // 4 pm

5、 检查对象中是否存在属性

有时你想在打印或使用它们之前检查属性是否存在。

JavaScript 没有在使用它之前执行 if property !== undefined ,而是有一个内置函数来执行此操作。

1.const developer = {

2. name: 'Paul Knulst',

3. role: 'Tech Lead',

4. extra: 'Loves DevOps',

5. company: 'Realcore',

6. os: 'Windows',

7.};

8.

9.

10.const laptop = {

11. os: 'Windows',

12. buydate: '27.10.2022',

13. extra: 'looks cool',

14.};

15.console.log('name' in developer); // true

16.console.log('extra' in developer); // true

17.

18.

19.console.log('name' in laptop); // false

20.console.log('extra' in laptop); // true