首页 > 编程语言 >9 个功能强大的 JavaScript 技巧

9 个功能强大的 JavaScript 技巧

时间:2022-11-24 10:05:07浏览次数:43  
标签:console log JavaScript 功能强大 length entries var string 技巧

9 个功能强大的 JavaScript 技巧_html

英文 | https://dev.to/razgandeanu/9-extremely-powerful-javascript-hacks-4g3p


1、全部替换

我们知道 string.replace() 函数仅替换第一次出现的情况。

你可以通过在正则表达式的末尾添加 /g 来替换所有出现的内容。


var example = "potato potato";
console.log(example.replace(/pot/, "tom"));
// "tomato potato"
console.log(example.replace(/pot/g, "tom"));
// "tomato tomato"

2、提取唯一值

通过使用 Set 对象和展开运算符,我们可以创建一个具有唯一值的新数组。


var entries = [1, 2, 2, 3, 4, 5, 6, 6, 7, 7, 8, 4, 2, 1]
var unique_entries = [...new Set(entries)];
console.log(unique_entries);
// [1, 2, 3, 4, 5, 6, 7, 8]

3、 将数字转换为字符串

我们只需要使用带空引号的串联运算符。


var converted_number = 5 + "";
console.log(converted_number);
// 5
console.log(typeof converted_number);
// string

4、将字符串转换为数字

我们需要的只是 + 运算符。

请注意它仅适用于“字符串数字”。


the_string = "123";
console.log(+the_string);
// 123

the_string = "hello";
console.log(+the_string);
// NaN

5、随机排列数组中的元素

我每天都在这样做。


var my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9];
console.log(my_list.sort(function() {
return Math.random() - 0.5
}));
// [4, 8, 2, 9, 1, 3, 6, 5, 7]

6、 展平二维数组

只需使用展开运算符。


var entries = [1, [2, 5], [6, 7], 9];
var flat_entries = [].concat(...entries);
// [1, 2, 5, 6, 7, 9]

7、 缩短条件语句

让我们来看这个例子:


if (available) {
addToCart();
}

通过简单地使用变量和函数来缩短它:

available

8、动态属性名

我一直以为必须先声明一个对象,然后才能分配动态属性。


const dynamic = 'flavour';
var item = {
name: 'Coke',
[dynamic]: 'Cherry'
}
console.log(item);
// { name: "Coke", flavour: "Cherry" }

9、使用 length 调整/清空数组

我们基本上覆盖了数组的 length 。

如果我们要调整数组的大小:


var entries = [1, 2, 3, 4, 5, 6, 7];
console.log(entries.length);
// 7
entries.length = 4;
console.log(entries.length);
// 4
console.log(entries);
// [1, 2, 3, 4]

如果我们要清空数组:

var entries = [1, 2, 3, 4, 5, 6, 7]; 
console.log(entries.length);
// 7
entries.length = 0;
console.log(entries.length);
// 0
console.log(entries);
// []

本文完~

9 个功能强大的 JavaScript 技巧_运算符_02

9 个功能强大的 JavaScript 技巧_数组_03


标签:console,log,JavaScript,功能强大,length,entries,var,string,技巧
From: https://blog.51cto.com/u_15809510/5882539

相关文章

  • JavaScript 面向对象(五)原型链
     5.原型链prototype原型'每一个构造函数都有一个属性叫做prototype,指向一个对象,'当这个构造函数被new的时候,它的每一个实例(即将生成的对象)的__proto__属性,也指向......
  • JavaScript 面向对象(番外)JS字面量
    javascript字面量在JavaScript里面,字面量包括:字符串字面量(stringliteral)、数组字面量(arrayliteral)和对象字面量(objectliteral),另外还有函数字面量(function......
  • JavaScript 面向对象(一)对象
    字面量’字面量表示如何表达这个值,一般除去表达式,给变量赋值时,等号右边都可以认为是字面量。字面量分为字符串字面量(stringliteral)、数组字面量(arrayliteral)和对......
  • JavaScript--href调用JS方法和href="#"与href="javascript:void(0)"
    关于href属性<a>标签的href属性用于指定超链接目标的URL。超链接的URL可能的值:绝对URL-指向另一个站点(比如href="http://www.example.com/index.htm")相......
  • JavaScript 面向对象 番外笔记
    小笔记JS输出空格解决方法:1、使用输出html标签 document.write("&nbsp;&nbsp;"+"1"+"&nbsp;&nbsp;&nbsp;&nbsp;"+"23");结果:1232、使用CSS样式document.w......
  • JavaScript 面向对象(番外)JS原始类型和引用类型
    书摘来自异步社区《JavaScript面向对象精要》一书中的第1章,第1.1节第1章原始类型和引用类型大多数开发者在使用Java或C#等基于类的语言的过程中学会了面向对象编程。由......
  • JavaScript 面向对象 番外 Object.defineProperty()
     注意,如果描述符中的某些属性被省略,会使用以下默认规则: ......
  • python 编程技巧
     元组命名如何为元组中的每个元素命名,提高程序可读性案例:学生信息系统中数据为固定格式:(名字,年龄,性别,邮箱地址,......)学生数量很大为了减小存储开销,对每个学生信息用元......
  • javascript-代码随想录训练营day8
    344.反转字符串题目链接:https://leetcode.cn/problems/reverse-string/题目描述:编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组s的形式给出。......
  • 衣服搭配技巧
    衬衫     比较合身的尺寸是       优衣库:XL180-108B  注意不要在优衣库买纯棉的衣服,不是很抗皱,穿上半天就特别特别皱了衬衫选购技巧:衣领:扣......