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

前端-JavaScript基础

时间:2023-03-26 22:04:52 JavaScript

简介什么是JavaScript?JavaScript(JS)是一种功能优先的轻量级、解释型或即时编译型编程语言。函数优先:编程语言中的函数可以作为参数传递给其他函数,可以作为另一个函数的返回值,也可以赋值给变量。解释型:与编译型语言相比,编译型需要先将源代码编译成中间代码,再由解释器解释运行。解释型不需要预编译,在程序运行时由解释器翻译运行。JavaScript标准是ECMAScript。截止到2012年,所有现代浏览器都全面支持ECMAScript5.1,旧版浏览器至少支持ECMAScript3。我们所知道的ES6是ECMA国际组织于2015年6月17日发布的ECMAScript第六版,这个版本的正式名称是ECMAScript2015.https://developer.mozilla.org...使用场景随着互联网的兴起,JavaScript的使用已经超越了浏览器。浏览器平台。随着HTML5的出现,浏览器本身的功能越来越强大,因此JavaScript可以调用很多系统功能,比如操作本地文件、操作图片、调用摄像头和麦克风等,可以开发出更加丰富的客户端产品。服务器应用程序。Node的出现使得JavaScript可以用来开发服务端应用,也使得JavaScript成为一种可以同时开发前端和后端的语言。移动应用程序。js也正在成为移动应用程序的开发语言。例如,ReactNative项目将用JavaScript编写的组件编译成原生组件。桌面应用程序。JavaScript甚至可以开发桌面应用程序,例如electronjs。数据库操作。一些Nosql数据支持JavaScript作为运行语言,比如mongodb。基本语法变量是对值的引用,JavaScript的变量名是区分大小写的,A和a是两个不同的变量。总变量;//未赋值的变量是undefined,是一个特殊的值,表示未定义。总计=1;vara,b;//一个变量后可以声明多个变量。您可能对变量提升感到惊讶,但是执行以下代码时并没有报错。由于JavaScript引擎的工作方式是先解析代码,获取所有声明的变量,换句话说,所有的变量声明语句都被提升到代码的头部。控制台日志(一);变量a=1;变量规则第一个字符是任意Unicode字母(包括英文字母和其他语言的字母),以及美元符号($)和下划线(_)第二个字符和后面的字符,除了Unicode字母、美元符号,还有下划线,也可以使用数字0-9。另外,中文也可以声明变量,除了以下保留字arguments,break,case,catch,class,const,continue,debugger,default,delete,do,else,enum,eval,export,extends,false,finally,for,function,if,implements,import,in,instanceof,interface,let,new,null,package,private,protected,public,return,static,super,switch,this,throw,true,try,typeof,var,void,while,with,yield。语句JavaScript程序的执行单元行。通常,一行是一个语句。如果一行中要写多个语句,我们使用;来表示语句的结束。总变量=1+1;//声明一个变量total,并将1+1运算的结果赋值给它。Comment//Thisisasingle-linecomment/*Thisisamulti-linecomment*/BlockJavaScript使用花括号将多个语句包裹起来表示一个块。注意var声明的变量不构成单独的作用域,这点和java不同。{vara=1;}a//1条条件语句//if结构if(m===1){//通常是console.log('ok')}//orif(bool)console.log('ok');//if/else结构if(m===1){statement;}else{statement;}//if/elseif.../else结构m==1m==2elseif(m===1){}elseif(m===2){}else{}switch结构switch(m){案例1://...中断;案例2://...中断;default://...}注意==和===的区别在使用==比较两个变量时,会发生隐式类型转换,例如字符串类型自动转换为数字类型。为了避免隐式转换带来的问题,我们使用===进行严格比较。三元运算符三元运算符也可以用于逻辑判断。(健康)状况)?表达式1:表达式2循环语句vari=0;while(i<100){console.log('iiscurrently:'+i);i=i+1;}//和上面不同,至少会执行一次vari=0;do{console.log('iiscurrently:'+i);}while(i<100);for循环语句初始化表达式:确定循环变量的初始值,只在循环开始时执行一次。条件表达式:在每一轮循环开始时,都必须执行这个条件表达式,只有值为真时才会继续循环。自增表达式:每次循环的最后一次操作,通常用于自增循环变量。for(初始化表达式;条件;自增表达式){语句}break和continuebreak语句用于跳出一个代码块或循环,continue是结束当前循环跳转到下一次。数据类型null和undefined●变量未初始化:undefined。●变量不可用:null。数字整数和浮点数在JavaScript内部,所有数字都存储为64位浮点数,甚至是整数。1===1.0//true数值精度:根据国际标准IEEE754,JavaScript浮点数的64个二进制位,从最左边开始,是这样组成的。第1位:符号位,0表示正数,1表示负数第2~12位(共11位):指数部分第13~64位(共52位):小数部分(即有效数字)取值范围:64位浮点数的指数部分的长度为11位二进制位,也就是说指数部分的最大值为2047(2的11次方-1)超出范围无法表示。数制:十进制:不带前导0的数值。八进制:前缀为0o或0O的值,或前导0且只有八个阿拉伯数字0-7的值。十六进制:以0x或0X为前缀的值。二进制:以0b或0B为前缀的值。NaNNaN是JavaScript的一个特殊值,意思是“NotaNumber”,主要出现在将字符串解析成数字出错的时候。字符串是用单引号和双引号括起来的字符串。在单引号字符串中,可以使用双引号。单引号可以在双引号字符串中使用。'abc'"abc""'a'"//字符串//字符串换行符varstr='String\String\String';转义符:\0:空(\u0000)\b:返回键(\u0008)\f:换页(\u000C)\n:换行(\u000A)\r:回车(\u000D)\t:制表符(\u0009)\v:垂直制表符(\u000B)\':单引号(\u0027)\":双引号(\u0022)\\:反斜杠(\u005C)字符集:javaScript使用Unicode字符集。在JavaScript引擎内部,所有字符都用Unicode表示Objectvarobj={//对象声明a:'1',b:'2'};//对象属性读取obj.aobj['a']//删除对象属性deleteobj.a//判断属性obj中是否有'a'//对象遍历for(variinobj){console.log('keyname:',i);console.log('keyvalue:',obj[i]);}function函数关键字声明。functionfoo(s){console.log(s);}//表达式形式varfoo=function(s){console.log(s);};Functionconstructorvaradd=newFunction('x','y','returnx+y');//等价于functionadd(x,y){returnx+y;}函数名提升:JavaScript引擎对待函数名作为变量名,所以在使用function命令声明函数时,整个函数会像变量声明一样被提升到代码的最前面。foo();functionfoo(){console('ok')}关于JavaScript函数的知识点还挺多的,后面会单独整理。数组数组是一种特殊的对象。typeof[1,2,3]//"object"长度:JavaScript使用32位整数来存储数组中元素的数量。这意味着最多有4294967295(2^32-1)个数组成员,也就是说length属性的最大值为4294967295。数组遍历vara=[1,2,3];for(variina){console.log(a[i]);}总结回顾本文的要点,欢迎留言交流。JavaScript简介。JavaScript基本语法。数据类型。