这 10 个 JS 小技巧,你可能还不知道
前端达人
共 3516字,需浏览 8分钟
· 2021-11-10
const data= null ?? 'data';
console.log(data);
// expected output: "data"
const data1 = 1 ?? 4;
console.log(data1);
// expected output: 1
function add(a, b) {
val1 = a || 1;
val2 = b || 1;
sum = val1 + val2;
return sum;
}
console.log(add(0, 0)); //output:2
function add1(a, b) {
val1 = a ?? 1;
val2 = b ?? 1;
sum = val1 + val2;
return sum;
}
console.log(add1(0, 0)); //ouput:0
// Longhand
switch (data) {
case 1:
data1();
break;
case 2:
data2();
break;
case 3:
data();
break;
// And so on...
}
// Shorthand
var data = {
1: data1,
2: data2,
3: data
};
const val = 1
data[val]();
function data1() {
console.log("data1");
}
function data2() {
console.log("data2");
}
function data() {
console.log("data");
}
console.log(`%cabc`, 'font-weight:bold;color:red');
//Longhand
if (test1) {
callMethod();
}
//Shorthand
test1 && callMethod();
// Longhand
function data1() {
console.log('data1');
};
function data2() {
console.log('data2');
};
var data3 = 1;
if (data3 == 1) {
data1();
} else {
data2();
} //data1
// Shorthand
(data3 === 1 ? data1 : data2)(); //data1
// Longhand
let value;
function returnMe() {
if (!(value === undefined)) {
return value;
} else {
return callFunction('value');
}
}
var data = returnMe();
console.log(data); //output value
function callFunction(val) {
console.log(val);
}
// Shorthand
function returnMe() {
return value || callFunction('value');
}
// Longhand
let mychoice: boolean;
if (money > 100) {
mychoice= true;
} else {
mychoice= false;
}
// Shorthand
let mychoice= (money > 10) ? true : false;
//or we can use directly
let mychoice= money > 10;
console.log(mychoice);
let salary = 300,
checking = (salary > 100) ? 'greater 100' : (x < 50) ? 'less 50' : 'between 50 and 100';
console.log(checking); // "greater than 100"
const data = {
a: 1,
b: 'atit',
d: {
test1: {
test2: 'patel',
},
},
};
console.log(data.val.test1); // here val is not present in object which leads the error
Error: Cannot read properties of undefined (reading 'test1')
console.log(data?.val); // using this we can check if the val is present in the data or not
let data1 = 'abcd';
let data2 = 'efgh';
//Longhand
let data = {data1: data1, data2: data2};
//Shorthand
let data = {data1, data2};
<p>heading before loads</p>
<script defer src="src/test.js"></script>
<p>heading after loads</p>
学习更多技能
请点击下方公众号
评论
偷偷告诉你如何一台电脑开多个微信!
大家好,我是轩辕。前几天在粉丝群里,有人问我是怎么在一台电脑上同时登录两个微信的?正好之前写过一篇文章,分析过原理,分享给没看过的小伙伴学习一下。手机端多开微信估计很多人都知道,像华为、小米等手机系统都对此做了支持,不过在运行Windows系统的电脑上怎么启动两个微信呢?其实很简单,你只需要写一个批
编程技术宇宙
0
盘点Lombok的几个骚操作,你绝对没用过!
👉 欢迎加入小哈的星球 ,你将获得: 专属的项目实战 / Java 学习路线 / 一对一提问 / 学习打卡 / 赠书福利全栈前后端分离博客项目 2.0 版本完结啦, 演示链接:http://116.62.199.48/ ,新项目正在酝酿中
小哈学Java
0
堪称最优秀的Docker可视化管理工具——Portainer你真的会用吗?
来源:blog.csdn.net/shark_chili3007/article/details/123366179👉 欢迎加入小哈的星球 ,你将获得: 专属的项目实战 / Java 学习路线 / 一对一提问 / 学习打卡 / 赠书福利全栈前后端分离博客项目
小哈学Java
0
轻松掌握开源项目的二次开发技巧
大厂技术 高级前端 Node进阶点击上方 程序员成长指北,关注公众号回复1,加入高级Node交流群本文作者:@方长_beezen 原文链接:https://juejin.cn/post/7358647992608489535前言随着软件行业的迅速
程序员成长指北
0
JS的这些新特性,你都用过么?
大厂技术 高级前端 Node进阶点击上方 程序员成长指北,关注公众号回复1,加入高级Node交流群作为一门不断演进的语言,JavaScript每年都会引入新特性。这些特性的加入,能够帮助我们编写更加简洁、高效、易于维护的代码。然而,并非所有新特性
程序员成长指北
1
真心建议大家搞个香港身份,再不冲就晚了
香港一直有“互联网荒漠”之称,疫情这三年,香港开始大力扶持互联网 科技工程 /IT产业,公布了《香港智慧城市蓝图》。目前规划已经覆盖到交通、医疗、经济、教育、环境等多个方面。目前在智能制造,5G网络、智慧城市等领域人才,通过香港优才计划入境都极具优势。什么是香港优才计划优才计划,全称优秀人才入境计划
公子龙
0
这五款牛逼的 IDEA 插件,堪称代码质量检查利器!
来源:blog.csdn.net/a745233700?type=blog一、Alibaba Java Coding Guidelines二、CheckStyle:三、PMD四、FindBugs:五、SonarLint:总结随着业务的发展,系统会越来越庞大,原本简单稳定的功能,可能在不断迭代后复杂度
码农突围
0
10个高级的 SQL 查询技巧
来源:towardsdatascience.com/ten-advanced-sql-concepts-you-should-know-for-data-science-interviews-4d7015ec74b0👉 欢迎加入小哈的星球 ,你将获得: 专属的项目实战 / Jav
小哈学Java
0