当前位置: 首页 > Web前端 > HTML

18个JavaScript入门技巧!

时间:2023-04-02 22:43:53 HTML

作者:MehulLakhanpal译者:前端小智来源:dev点赞再看,微信搜索【大千世界】,B站关注【前端小智】这个没有大厂背景,而是有着积极心态的人。本文已收录到GitHubhttps://github.com/qq44924588...,文章已分类,也整理了很多我的文档和教程资料。最近开源了一个Vue组件,但是还不够完善。欢迎大家一起完善,也希望大家能给个star支持一下。谢谢。github地址:https://github.com/qq44924588...1.转换字符串constinput=123;console.log(input+'');//'123'console.log(String(input));//'123'console.log(input.toString());//'123'2。转换为数字constinput='123';console.log(+input);//123console.log(数字(输入));//123console.log(parseInt(输入));//1233.转换布尔值constinput=1;//方案一——使用双感叹号(!!)转换为布尔值console.log(!!input);//true//场景2-使用Boolean()方法console.log(Boolean(input));//真4。字符串'false'constvalue='false'有问题;console.log(布尔值(值));//真console.log(!!value);//true//检查console.log(value==='false');nullvsundefinednull是一个值而undefined不是。null就像一个空盒子,而undefined没有盒子。constfn=(x='default')=>console.log(x);fn(未定义);//默认值fn();//默认值fn(null);//null如果传入null,则不使用默认值,当传入undefined或不传参数时,使用默认值。6、真值和假值假值:false、0、""、null、undefined、NaN。真值:“Values”,0,{},[]。7.const声明可以改变哪些类型的变量。如果不想改变值,可以使用const:constname='前小智';name='王大爷';//错误constlist=[];list=[1];//报错constobj={};obj={name:'前端小智'};//报错但是const-declared引用类型,它的值可以改变:constlist=[];列表.推送(1);//作品列表[0]=2;//worksconstobj={};obj['name']='前端小智';//works8.三个等号与双等??号的区别//双等号-将两个操作数转换为同一类型,然后比较console.log(0=='o');//true//三重等号-不转换为同一类型console.log(0==='0');//错误9。接收参数的更好方法functiondownloadData(url,resourceId,searchTest,pageNo,limit){}downloadData(...);//需要记住顺序比较简单methodfunctiondownloadData({url,resourceId,searchTest,pageNo,limit}={}){}downloadData({resourceId:2,url:"/posts",searchText:"WebDev"});10.把普通函数改成箭头函数constfunc=function(){console.log('a');返回5;};函数();可以重写为constfunc=()=>(console.log('a'),5);功能();11.从箭头函数返回对象/表达式constgetState=(name)=>({name,message:'Hi'});12.将集合转换为数组constset=newSet([1,2,1,4,5,6,7,1,2,4]);控制台日志(设置);//Set(6){1,2,4,5,6,7}set.map((num)=>num*num);//类型错误:设置。mapisnotafunctionconverttoarrayconstarr=[...set]13.检查值是否为数组constarr=[1,2,3];console.log(类型arr);//objectconsole.log(Array.isArray(arr));//真14。获取对象的所有keycosntobj={name:"前端小智",年龄:16,地址:"厦门",职业:"前端开发",};console.log(Object.keys(obj));//姓名、年龄、地址、职业15.双问号语法constheight=0;console.log(height||100);//100console.log(高度??100);//0这个??意味着如果??左边的值为null或未定义,则返回右侧的值16。map()map()方法创建一个新数组,结果是数组中的每个元素是调用提供的函数一次后的返回值。常数numList=[1,2,3];constsquare=(num)=>{returnnum*num}constsquares=numList.地图(正方形);安慰。日志(正方形);//[1,4,9]17.try..catch..finallyconstgetData=async()=>{try{setLoading(true);constresponse=awaitfetch("https://jsonplaceholder.typicode.com/posts");constdata=awaitresponse.json();设置数据(数据);}赶上(错误){console.log(错误);setToastMessage(错误);}最后{setLoading(false);//不管报错与否,最后都会执行}};getData();18.解构constresponse={msg:"success",tags:["programming","javascript","computer"],body:{count:5},};const{body:{count,unknownProperty='test'},}=response;console.log(count,unknownProperty);//5'test'代码部署后可能存在的Bug无法实时获知,为了解决这些Bug之后需要大量的时间去记录调试,顺便推荐一个好用的BUG监控工具Fundebug。原文:https://dev.to/318097/18-tips...每周更新交流文章。可以微信搜索【大千世界】第一时间阅读,回复【福利】还有很多前端视频等着你,本文GitHubhttps://github.com/qq449245884/xiaozhi已收录,欢迎来到星空。