您的位置:首页 > Web前端 > JavaScript

贰、js的基础(一)

2015-09-14 17:06 489 查看
1、js的语法

a.区分大小写

b.弱类型变量:变量无特定类型

c.每行结尾的分号可有可无

d.括号用于代码块

e.注释的方法与c语言和java相同

2、变量

注意事项:

a.通过关键字var来声明。

b.可以声明多个变量。

c.同一个变量中储存不同的数据类型(最好是同一个变量只存储一种数据类型)

d.变量名称遵循的规则:

(1)首字符必须是字母(大小写均可)、下划线(_)或美元符号($);

(2)余下的字母随意

(3)变量名不能是关键字或者保留字。

3、数据类型

9种数据类型:未定义(Undefined)、空(Null)、布尔型(Boolean)、字符串(String)、数值(Number)、对象(Object)、引用(Reference)、列表(List)和完成(Commpletion)。

a、字符串:string对象用于处理已有的字符串。

规 则:字符包括字母、数字、标点符号和空格。字符串必须放在单引号和双引号里。

注 意:(1)复杂字符串可以用escaping方法来进行转椅;字符串具有leng属性,它返回字符串中字符的个数。

(2)即使字符包含双字节(ASCII字符只占用一个字节),每个字符也只算一个字符。

      (3)获取指定字符的属性charAt()方法,第一个字符位置为0,第二个位置为1,以此类推。

b、从某一段字符中取出一段字符串,可采用slice()、substring()、sunstr()方法。

<!--slice()和substring()-->
<script>
  var mystring="1234567890abcdefghijk";
    document.write(mystring.slice(2,7)+"<br>");
   document.write(mystring.substring(12,20)+"<br>");
   document.write(mystring.slice(16)+"<br>");
 </script>

<!--slice()和substring()的区别-->

<script>
  var mybl="manaemjszhuzhu";
  document.write(mybl.slice(6,-4)+"<br>");
  document.write(mybl.substring(6,-4)+"<br>");
</script>

注意:slice()负参数时,从字符串的末尾往前计数;substring()负参数时,直接忽略负数,作为0来处理,并将较小的作为起始值,较大的作为终止位。

c、搜索操作字符,使用indexOf()和lastIndexOf()两种方法。

<script>
  var myjiequ="wodejiequzifuchuangyiyayiayo";
  document.write(myjiequ.indexOf("i")+"<br>");//从前往后搜索,第5个是
  document.write(myjiequ.indexOf("i",12)+"<br>");//可选参数,从第几个字符开始往后找
  document.write(myjiequ.lastIndexOf("i")+"<br>");//从后往前搜索
  document.write(myjiequ.lastIndexOf("i",8)+"<br>");//可选参数,从第几个字符开始往前找
  document.write(myjiequ.lastIndexOf("z",8)+"<br>");//字符串z,找不到,返回-1
</script>

d、数值(可以是任意的数字,包括小数和负数)

<!--数值的科学计数法toExponential()-->
<script language="javascript">
var mynumber=8907;//注意数据类型,数值的写法,数字不能用引号引起来。
alert(mynumber.toExponential(2));
</script>

e、布尔型(只有2个只:false和true;布尔型不能用引号引起来)

<!--布尔型变量的正确写法-->
<script>
  var married=true;
  alert("1."+typeof(married));
  married="true";
  alert("2."+typeof(married));//typeof()查看数据的类型
</script>

f、类型转换(转换函数、强制类型转换、利用js变量弱类型转换)

详情见——贰、js的基础(二)

g、数组:有名称相同的多个值构成一个集合。

(1)使用关键字array来声明;可以指定这个数组元素的个数(也就是长度);数据元素可以是字符串、数值和布尔值。

(2)数组的声明方法:

  arrayObj = new Array(); //创建一个数组。

  代码如下:var arr1 = new Array();
arrayObj = new Array([size]) 创建一个数组并指定长度,注意不是上限,是长度。

代码如下:var a = new Array(5);
arrayObj = new Array([element0[, element1[, ...[, elementN]]]]) 创建一个数组并赋值。

代码如下:var a = new Array(["b", 2, "a", 4,]);

arrayObj = [element0, element1, ..., elementN] 创建一个数组并赋值的简写,注意这里中括号不表示可省略。

代码如下:var a = ["b", 2, "a", 4,];

(注):注意带“[]”与不带“[]”的区别

代码如下:

var a = new Array(5); //指创建长度为5的数组

var a = new Array([5]); //指创建一个数组,长度为1,并且第一位是5
(3)数组的使用方法
详情见——贰、js的基础(三)
4、关键字:描述了一组具有特定用途的关键字。这些关键字可用于表示控制语句的开始或结束,或者用于执行特定操作等。按照规则,关键字也是语言保留的,不能用作标识符

breakdoinstanceoftypeof
caseelsenewvar
catchfinallyreturnvoid
continueforswitchwhile
debugger*functionthiswith
defaultifthrowdelete
intry
5、保留字:ECMA-262 还描述了另外一组不能用作标识符的保留字。尽管保留字在这门语言中还没有任何特定的用途。但它们有可能在将来被用作关键字。以下是ECMA-262 第3 版定义的全部保留字

abstractenumintshort
booleanexportinterfacestatic
byteextendslongsuper
charfinalnativesynchronized
classfloatpackagethrows
constgotoprivatetransient
debuggerimplementsprotectedvolatile
doubleimportpublic
第5 版把在非严格模式下运行时的保留字缩减为下列这些:
classenumextendssuper
constexportimport
在严格模式下,第5 版还对以下保留字施加了限制:
implementspackagepublicinterface
privatestaticletprotected
yield
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: