博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JavaScript:JavaScript语法的详细介绍
阅读量:6289 次
发布时间:2019-06-22

本文共 5101 字,大约阅读时间需要 17 分钟。

JavaScript语法:只要Java会了,基本上javascript语法就会了。

 ——变量的定义

 ——程序的结构控制

 ——数组操作

 ——函数的定义即使用

  

基本的test.html代码如下,它会导入下面的test.js中的javascript代码:

            
javascript的程序开发

1.变量的定义

在Java中如果要定义变量语法:“数据类型 变量名称 = 内容”。对于数据类型,Java中有很多,还有许多自定义的类型。Javascript很简单,可以不声明类型直接编写变量,变量类型是根据其设置的内容来决定的。

范例:观察test.js程序代码

temp = 10; //temp类型为整型window.alert(temp + temp);  //20

temp = 10.2; //temp类型为浮点型window.alert(temp + temp);  //20.4

temp = "10.2"; //temp类型为字符串window.alert(temp + temp);  //10.210.2

temp = "10.2"; //temp类型为字符串temp = 10 ; //temp类型为整型,类型被修改window.alert(temp + temp);  //20

可以发现,整个javascript操作当中,并没有那么严格的语法要求。因为从正常来讲,javascript应该是美工学的,不是程序开发人员来学的。所以它最初设计的逻辑性没有这么滴强。

 

如果有需要也可以使用var来定义变量。

var temp = 10 ; window.alert(temp + temp);//20

var temp = 10 ; temp = "20" //改变类型,变成字符串window.alert(temp + temp); //2020

 javascript没有必要这么概念的复杂,一帮情况下,在javascript定义全局变量的时候使用。其实都可以不使用,只是一个好的编程习惯,仅此而已。

既然说到了字符串的问题了,那么也就产生新的事情了。即字符串方面的操作:

字符串的比较:

var temp = "hello";alert(temp == "hello");  //ture

字符串判断是否为空:没有equals方法

方式一:

var temp = "hello";alert(temp != "");  //ture

方式二:

var temp = "hello";alert(temp != null);  //ture

字符串替换:

var temp = "hello";alert(temp.replace("l","_")); //将l替换成下划线,he_lo

字符串子串的获取:

var temp = "hello";alert(temp.substring("1",2));  //从角标1开始到角标2结束的子串,不包括尾, e

字符串长度:

var temp = "hello"alert(temp.length);  //5

   发现,java大部分的习惯性操作,在javascrip里面都是存在的。

 

2.程序的结构控制

  程序逻辑就是if、else、switch、while、for循环。

范例:使用if分支语句

var temp = "hello"; if (temp == "hello") {     document.write("

欢迎光临

"); }else{ document.write("

你去死吧

"); }

var temp = "";if (temp == "hello") {    document.write("

欢迎光临

");}else{ document.write("

你去死吧

");}

范例:使用while语句

var temp = 0;var sum  = 0;while(temp < 10){    sum += temp;    temp ++;}document.write("sum = "+sum); //45

范例:使用for循环语句

var temp = "hello";for (i = 0; i < temp.length; i++) {    document.write("

"+temp[i]+"

"); // h e l l o};

范例:使用switch语句

var temp = "hello";for (var i = 0; i < temp.length; i++) {    switch(temp[i]){        case 'h':            document.write("

this is a h

"); break; case 'e': document.write("

this is a e

"); break; case 'l': document.write("

this is a l

"); break; case 'o': document.write("

this is a o

"); break; }};

范例:打印乘法口诀表

console.log("*******控制台调试代码*******");document.write("
");for (var i = 1; i <= 9; i++) { document.write("
"); for (var j = 1; j <= i; j++) { document.write("
"); }; for (var j = 1; j <= 9-i; j++) { document.write("
"); }; document.write("
");};document.write("
"+j+" * "+i+" = "+ (i*j) +"  
");

另外告诉一点,以后如果想进行代码的错误调试,可以通过如下语句完成:

console.log(一些信息),用它来取代alert()和document.write(),从而在后台做代码的检察观测,如下效果图:

 

 

3.数组操作

数组是一个类,使用的是Array类描述数组概念。可以使用length取得数组的长度,也可以使用索引的方式设置内容。

范例:求数组的长度

var data = new Array(3);  //3个元素的内容document.write("

数组长度:" + data.length + "

");

范例:通过索引设置和获取数组的值

var data = new Array(3);  //3个元素的内容data[0] = 10;data[1] = 20;data[2] = 30;document.write("

数组长度:" + data.length + "

");for (var i = 0; i < data.length; i++) { document.write("

" + data[i] + "

");};

范例:数组大小自动扩充

var data = new Array(3);  //3个元素的内容data[0] = 10;data[1] = 20;data[2] = 30;data[5] = 30;document.write("

数组长度:" + data.length + "

");for (var i = 0; i < data.length; i++) { document.write("

" + data[i] + "

");};

  javascript中的数组的设计是一个很牛的设计思想,可以随意动态的扩充大小。但是如果没有的内容,它不会用0、null来描述,使用”undefined”来描述。

 

4.函数的定义即使用(Function)

如果现在使用Java来定义一个方法,格式是这样的:

[public | protected | private] [static] [abstract] [final] [native] [synchronized] 方法返回值 方法名称(参数类型 变量,… | 参数类型...变量 ) [throws 异常,异常,…]{

  //方法代码

  [return 返回值];

}

那么在javascript中,函数的定义非常简单:

   function 函数名称(参数){

  [return 返回值];

}

定义函数的时候不需要考虑返回值的类型,如果要返回,那么就直接编写return就行。

范例:定义函数1

function add (x,y) {    return x + y;}document.write("

" + "x + y = " + add(10,20) +"

");

  最厉害的是在调用函数的时候,函数的参数可以随便写:

范例:定义函数2

function add (x,y) {    return x + y;}document.write("

" + "x + y = " + add(10,20,30,40,50,60) +"

");

  在调用函数的时候如果参数不足,则参数的内容会自动使用”undefined”进行表示,肯定无法进行正确的计算。

范例:定义函数3

function add (x,y) {    return x + y;}document.write("

" + "x + y = " + add(10) +"

");

  如果在参数不足的情况下依然要保证计算的完整,那么就使用“函数名称.argments”判断,此操作表示的是所有函数的参数的内容,艺术组的形式操作,使用length能够判断长度。

范例:定义函数4

function add (x,y) {    if (add.arguments.length == 2) {                return x + y;    }else if (add.arguments.length == 1) {        return x;    }else{        return "无法计算";    }}

document.write("<h1>" + "x + y = " + add(10) +"</h1>");

document.write("<h1>" + "x + y = " + add(10,20) +"</h1>");

document.write("<h1>" + "x + y = " + add(10,20,30) +"</h1>");

 

  需要注意的是,在javascript里面也存在面向对象的编程。都是以函数为基础的。

范例:观察面向对象

function Person (name,age) {    this.name = name;    this.age = age;    this.toString = function(){ //表示为类中扩充方法        return "姓名:" + this.name + ",年龄:"+this.age;    }}document.write("

" + new Person("zhangsan",20) +"

");

 

  如果代码中写的是”function(){}”的操作,那么表示的是匿名函数。

 

总结:

<1>、javascript的语法完全考虑到美工的不理智型而设计的;

<2>、javascript的语法都是短小精悍为主;

<3>、javascript原本就不是一个面向对象的编程语言,所以支持的面向对象,只是一个娱乐。

转载地址:http://ijkta.baihongyu.com/

你可能感兴趣的文章
如何判断一条sql(update,delete)语句是否执行成功
查看>>
JSONObject.parseObject(jsonStr);和JSONObject.fromObject(jsonStr);
查看>>
【集训队作业2018】小Z的礼物
查看>>
ClientScriptManager与ScriptManager向客户端注册脚本的区别
查看>>
js和php中几种生成验证码的方式
查看>>
android UI进阶之仿iphone的tab效果1
查看>>
这是我的第1个C#程序(向控制台输出一句话)
查看>>
html
查看>>
Xqk.Data数据框架开发指南:丰富的、灵活的查询方法(第三部分:SqlField)
查看>>
Java基本语法
查看>>
MapReduce对交易日志进行排序的Demo(MR的二次排序)
查看>>
online-compiler 在线编译器
查看>>
9. Palindrome Number - Easy
查看>>
使用vs2017编译live555
查看>>
洛谷——P1347 排序
查看>>
uboot2009 nandflash移植
查看>>
gulp-usemin 插件使用
查看>>
int数据类型的最大数
查看>>
OI养老专题02:约瑟夫问题求幸存者
查看>>
Python多线程
查看>>