有哪些JS技巧
发表于:2024-09-25 作者:千家信息网编辑
千家信息网最后更新 2024年09月25日,这篇文章主要讲解了"有哪些JS技巧",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"有哪些JS技巧"吧!1.三元运算符新手let hungry = tru
千家信息网最后更新 2024年09月25日有哪些JS技巧
这篇文章主要讲解了"有哪些JS技巧",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"有哪些JS技巧"吧!
1.三元运算符
新手
let hungry = true; let eat; if (hungry == true) { eat = 'yes'; } else { eat = 'no'; }
老手
let hungry = true; let eat = hungry == true ? 'yes' : 'no';
2.数字转字符串/字符串转数字
新手
let num = 15; let s = num.toString(); // number to string let n = Number(s); // string to number
老手
let num = 15; let s = num + ""; // 数字转字符串 let n = +s; // 字符串转数字
3.填充数组
新手
for(let i=0; i < arraySize; i++){ filledArray[i] {'hello' : 'goodbye'}; }
老手
let filledArray = new Array(arraysize).fill(null).map(()=> ({'hello' : 'goodbye'}));
4.对象的动态属性
新手
let dynamic = "value"; let user = { id: 1, }; user[dynamic] = "other value";
老手
let dynamic = "value"; let user = { id: 1, [dynamic] = "other value" };
5.删除重复项
新手
let array = [100, 23, 23, 23, 23, 67, 45]; let outputArray = []; let flag = false; for (j = 0; < array.length; j++) { for (k = 0; k < outputArray.length; k++) { if (array[j] == outputArray[k]) { flag = true; } } if (flag == false) { outputArray.push(array[j]); } flag = false; } // tArray = [100, 23, 67, 45]
老手
let array = [100, 23, 23, 23, 23, 67, 45]; let outputArray = Array.from(new Set(array))
6. 数组到对象
新手
et arr = ["value1", "value2", "value3"]; let arrObject = {}; for (let i = 0; i < arr.length; ++i) { if (arr[i] !== undefined) { arrObject[i] = arr[i]; } }
老手
let arr = ["value1", "value2", "value3"]; let arrObject = {...arr};
7.对象到数组
新手
let number = { one: 1, two: 2, }; let keys = []; for (let numbers in numbers) { if (number.hasOwnProperty(number)) { keys.push(number); } } // key = [ 'one', 'two' ]
老手
let number = { one: 1, two: 2, }; let key = Object.keys(numbers); // key = [ 'one', 'two' ] let value = Object.values(numbers); // value = [ 1, 2 ] let entry = Object.entries(numbers); // entry = [['one' : 1], ['two' : 2]]
8. 短路条件
新手
if (docs) { goToDocs(); }
老手
docs && goToDocs()
9. 使用^检查数字是否相等
if(a!=123) // before // 一般开发者 if(a^123) // after // B格比较高的
10.对象遍历
const age = { Rahul: 20, max: 16 }; // 方案1:先得 key 在便利 key const keys = Object.keys(age); keys.forEach(key => age[key]++); console.log(age); // { Rahul: 21, max: 16 } // 方案2 - `for...in` 循环 for(let key in age){ age[key]++; } console.log(age); // { Rahul: 22, max: 18 }
11. 获取对象的所有键
cosnt obj = { name: "前端小智", age: 16, address: "厦门", profession: "前端开发", }; console.log(Object.keys(obj)); // name, age, address, profession
12.检查值是否为数组
const arr = [1, 2, 3]; console.log(typeof arr); // object console.log(Array.isArray(arr)); // true
13.初始化大小为n的数组并填充默认值
const size = 5; const defaultValue = 0; const arr = Array(size).fill(defaultValue); console.log(arr); // [0, 0, 0, 0, 0]
14. 真值和虚值
虚值:false,0, "",null,undefined和NaN。
真值:"Values",0",{},[]。
15. 三等号和双等号的区别
// 双等号 - 将两个操作数转换为相同类型,再比较 console.log(0 == 'o'); // true // 三等号 - 不转换为相同类型 console.log(0 === '0'); // false
16. 接收参数更好的方式
function downloadData(url, resourceId, searchTest, pageNo, limit) {} downloadData(...); // need to remember the order
更简单的方法
function downloadData( { url, resourceId, searchTest, pageNo, limit } = {} ) {} downloadData( { resourceId: 2, url: "/posts", searchText: "WebDev" } );
17.null vs undefined
null =>它是一个值,而undefined不是。
const fn = (x = 'default value') => console.log(x); fn(undefined); // default value fn(); // default value fn(null); // null
传递null时,不采用默认值,而 undefined或未传递任何内容时,将采用默认值。
感谢各位的阅读,以上就是"有哪些JS技巧"的内容了,经过本文的学习后,相信大家对有哪些JS技巧这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!
新手
老手
对象
数字
数组
技巧
字符
字符串
等号
内容
学习
相同
前端
方案
真值
类型
开发
检查
两个
动态
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
前端如果发送xml数据库
摩登时装系统软件开发
h1z1服务器状态
现代科技和互联网有关系吗
互联网服务器业务推荐
软件开发怎么培训计划
对象软件开发方法有哪些
数据库安全基线工具
广睿知产网络技术有限公司
四川安卓软件开发定做
可以让腾讯云提供服务器
网络安全自制剧
软件开发约束是什么
推广软件开发加盟商报价方案
数据库双机同步软件高可用
海安智能网络技术排名靠前
苏区数据库
结合做好网络安全法宣传
版本管理的 本地服务器
云计算中服务器虚拟化分析
阳澄湖服务器
服务器后端 c
笔记本电脑的服务器编号在哪里
硬件设计与软件开发的区别
河北网络安全普法知识
srs流媒体服务器
phpcms修改数据库
福建服务器虚拟化安装云空间
数据库的人
深圳电商软件开发靠谱吗