当前位置: 代码迷 >> 综合 >> JavaScript ECMA
  详细解决方案

JavaScript ECMA

热度:101   发布时间:2023-11-27 23:14:30.0

JavaScript的引入方式

<!DOCTYPE html>
<html><head><meta charset="utf-8"><title></title><!--[1]js引入的方式一 alert:弹窗--><script type="text/javascript">		alert("js学习");			</script><!--[2]js的引入方式2 type:引入否认类型--><script src="js/test.js" type="text/javascript" charset="utf-8"></script><!--切记:[1]两种引入方式如果都使用了,那么两种js代码都会执行	[2]在书写js的时候不要把两者书写二合一--></head><body></body>	
</html>

数据类型
A、number(数字类型)
B、string(字符串类型)
C、boolean(布尔类型)
D、object(对象类型)

特殊数据类型
A、undefined(未定义的) 原因:只是声明了变量,没有赋值
B、NaN(not a number )不是一个数字 原因:把一个字符串(例如:123a)强制转换造成
C、null :对象的空

运算符
01 算数运算符
+ - * / % ++ – 三目运算
02逻辑运算符
& | ! && || < > >= <= != ^
03连接运算符
+
04特殊运算符

==(等值符 使用较多)
比较的时候先比较类型 ,类型一致比较内容,类型不一致统一的转化成number,然后在比较内容

===
(等同符)
比较的时候先比较类型,类型不一致直接返回false,类型一致在比较内容,内容一致返回true ,不一致返回false;
注意:
在js中比较的时候用的就是这两种,没有equals这个方法

控制语句

<script type="text/javascript">var a=100;//js中for循环中的变量不是局部的变量是全局的, 在js中for循环不是一个函数for(var i=1;i<=9;i++){
    
// var a=1;for(var  j=1;j<=i;j++){
    	/*直接输出到浏览器上*/		document.write(i+"*"+j+"="+i*j+"&nbsp;&nbsp;&nbsp;");		}	document.write("<br />");}alert(a);		</script>

函数的三种方式声明方式
函数的执行符:()–函数的执行符–jquery的封装原理

<html><head><meta charset="utf-8"><title></title><script type="text/javascript">/***********[1]函数声明的三种方式**********************/function  demo1(){
    alert("函数声明方式一");}var demo2= function(){
    alert("函数声明方式二")}//函数本身也是一个对象var  demo3=new Function("alert('函数声明方式三')");</script>

JS中参数的传递
A、js中形参的个数和实参的个数可以不一致
B、js中没有方法的重载 ,重名的方法只会覆盖

<html><head><meta charset="utf-8"><title></title><script type="text/javascript">/***********[2]函数的参数的问题***************************/	function  demo4(a,b,c){
    alert(a+"***"+b+"***"+c);}function  demo4(a,b){
    alert(a+"--"+b);}//demo4(12,"sxt"); //12--sxt//demo4(12); //12--undefined//js中形参的个数和实参的个数可以不一致//demo4(12,"sxt",13); //12--sxt</script>

函数的返回值

<html><head><meta charset="utf-8"><title></title><script type="text/javascript">/***********[3]JS中函数的返回值*******************/function  demo5(a){
    alert(a);return "sxt";}//没有定义方法的返回值默认返回 undefined//alert("函数的返回值:"+demo5(20));function  demo6(uu){
    alert(uu());return 500;}var  ii=function(){
    return "bjsxt";	}demo6(ii);	</script>

数组

数组的声明:

function  demo1(){
    //方式一var arr1=new Array();		//方式二 5:数组的长度var arr2=new Array(5);		//方式三 具体的元素var arr3=new Array(1,1.2,true,'bjsxt',new Date());//方式四 (使用较多)var arr4=[1,1.2,new Date(),true,"字符串"];		//控制台输出console.log(arr4);		}

数组的使用 (js中数组的下标是可以不连续的,如果不连续默认补充empty)
arr[0]=“123”;
arr[10]=1;
中间元素用empty补充

数组的扩容

function  demo3(){
    var arr =[1,1.2,new Date(),false,"呵呵"];console.log("前:"+arr);//数组的扩容
// arr.length=10;//数组的缩小arr.length=3;console.log("后:"+arr);	}

数组的遍历

function  demo4(){
    var arr =[1,1.2,new Date(),false,"呵呵"];//普通的for循环 
/*for(var i =0;i<arr.length;i++){ console.log(arr[i]); }*/
增强for循环  u:是代表的是数组的下标不是具体的数组中的元素for(var  u in arr){
    	console.log(arr[u]);}}

数组中常用的方法

function  demo5(){
    
var arr =[1,1.2,new Date(),false,"呵呵"];	console.log("前:"+arr);// 删除并返回数组的最后一个元素
// var po= arr.pop();//向数组的末尾添加一个或更多元素,并返回新的长度。
// var po= arr.push("我们");//1:代表的是删除开始的位置 2:删除的个数
// arr.splice(1,2); //添加的操作 2:开始的下标 0:删除的个数 :添加的内容arr.splice(2,0,"添加"); console.log("后:"+arr);}
  相关解决方案