1、Javascript是什么?

JavaScript是一种脚本语言,结构简单,使用方便,其代码可以直接放入HTML文档中,可以直接在支持JavaScript的浏览器中运行.JavaSript。

Javascript使得网页的交互性更强,更生动和灵活.当在浏览网页时做了某种操作就产生一个事件,JavaScript所编写的程序可对相应的事件做出响应。

2、Javascript的特点

⑴Javascript区分大小写;而HTML、CSS不区分大小写。

⑵Javascript是弱类型语言,定义变量只能用“var”关键字。

⑶Javascript的注释有两种:/*  */  和 //。HTML的注释语言是<!-- -->;CSS的注释是/* */。

3、Javascript的变量

⑴变量通过关键字var声明

⑵用var关键字可以同时声明多个变量,例如

var name=”Tom”,age=19,male=true;

⑶Javascript的变量不一定需要初始化;虽然不需要初始化,但给一个初始值是比较好的,例如

var name;

  

⑷变量的名称规则

①首字母必须是字母(大小写均可)、下划线、或者美元符;②余下的字母可以是下划线、美元符、任意字母或数字字符;③变量名不含关键字

⑸命名习惯:增强代码的可读性

4、Javascript的数据类型

⑴字符串

var sMyString=”hello world”;

字符串属性方法

⑵数值

⑶布尔型

⑷类型转换

①typeof

    var a = "hello world";

    var b = 10;

    var c = true;

    alert("typeof(a) is " + typeof (a) + "\n" +

          "typeof(b) is " + typeof (b) + "\n" +

          "typeof(c) is " + typeof (c)

          );

  

②数值转字符串

    var a = 3;

    var b = a + "";

    var c = a.toString();

    var d = "" + a;

    alert("typeof(a) is " + typeof(a) + "\n" +

          "typeof(b) is " + typeof(b) + "\n" +

          "typeof(c) is " + typeof(c) + "\n" +

          "typeof(d) is " + typeof(d) + "\n"

        );

  

特殊的一个例子,结果分别是“54、414”。

    var a = b = c = 4;

    alert(1 + b + c.toString());

    alert(c.toString() + 1 + b);

  

数值类型转字符中的同时,实现进制转换

    var a = 11;

    document.write(a.toString(2) + "<br>");

    document.write(a.toString(3) + "<br>");

    document.write(a.toString(8) + "<br>");

    document.write(a.toString(16) + "<br>");

  

③字符串转数值类型

parseInt(), parseFloat()

首先检查索引为0处的字符,判断其是否为有效数字;如果不是字符,直接返回isNaN,不再进行操作;如果为有效字符,检查索引为1处的字符,直到发现非有效字符为止。

    document.write(parseInt("4567red") + "<br>");

    document.write(parseInt("53.5") + "<br>");

    document.write(parseInt("0xC") + "<br>");    //直接进制转换

    document.write(parseInt("isaacshun@gmail.com") + "<br>");

  

    document.write(parseFloat("34535orange") + "<br>");

    document.write(parseFloat("0xA") + "<br>");  //不再有默认进制,直接输出第一个字符“0”

    document.write(parseFloat("435.34") + "<br>");

    document.write(parseFloat("435.34.564") + "<br>");

    document.write(parseFloat("isaacshun@gmail.com") + "<br>");

  

⑸数组

    var aTeam = new Array(12);

    var aColor = new Array();

    aColor[0] = "blue";

    aColor[1] = "yellow";

    aColor[2] = "green";

    aColor[3] = "black";

    var aNumber = new Array(1, 3, 4, 7);

    alert(aColor.length + " " + aColor[1]);

    alert(aNumber.length + " " + aNumber[2]);

  

    var aMap = ["China", "USA", "Britain"];

    aMap[20] = "Korea";

    alert(aMap.length + " " + aMap[10] + " " + aMap[20]);

  

④数组转字符串

    var aMap = ["China", "USA", "Britain"];

    alert(aMap.toString() + " " + typeof (aMap.toString()));

  

⑤用join方法指定转换后字符串间的连接符

    var aMap = ["China", "USA", "Britain"];

    document.write(aMap.join() + "<br>");            //无参数,等同于toString()

    document.write(aMap.join("") + "<br>");      //不用连接符

    document.write(aMap.join("][") + "<br>");        //用“][”来连接

    document.write(aMap.join("-isaac-") + "<br>");

  

⑥用split方法将字符串转数组

    var sFruit = "apple,pear,peach,orange";

    var aFruit = sFruit.split(",");

    alert(aFruit.join("--"));

  

如果split中的参数是空字符中(””),就会将每一个字符分成相应的数组元素。

    var apple = "Apple";

    var aChar = apple.split("");

    alert(aChar.join("#"));

  

⑦用reverse方法使数组元素反序

    var aFruit = ["apple", "pear", "peach", "orange"];

    alert(aFruit.reverse().toString());

  

⑧用split方法使字符串反序排列

    var sMyString = "abcdefg";

    alert(sMyString.split("").reverse().join("-"));

    /*   split("")将每一个字符转为一个数组元素

    reverse()反序数组的每个元素

    join("")再最后将数组无连接符的转为字符串

    */

  

⑨用sort方法进行数组元素排序

    var aFruit = ["pear", "apple", "peach", "orange"];

    aFruit.sort();

    alert(aFruit.toString());

  

2015-09-28 Javascript的更多相关文章

  1. iOS 学习笔记 六 (2015.03.28)常见错误

    2015.03.28 1. property's synthesized getter follows Cocoa naming convention for returning 'owned' ob ...

  2. Contest2071 - 湖南多校对抗赛(2015.03.28)

    Contest2071 - 湖南多校对抗赛(2015.03.28) 本次比赛试题由湖南大学ACM校队原创 http://acm.csu.edu.cn/OnlineJudge/contest.php?c ...

  3. http://browniefed.com/blog/2015/09/10/the-shapes-of-react-native/

    http://browniefed.com/blog/2015/09/10/the-shapes-of-react-native/

  4. http://deepdish.io/2015/04/28/creating-lmdb-in-python/

    http://deepdish.io/2015/04/28/creating-lmdb-in-python/

  5. Visual Studio 2015 开发大量 JavaScript 代码项目程序崩溃的解决方案

    最近公司做新项目,基于 Bootstrap.AngularJS 和 kendo 开发一套后台的管理系统,在项目中使用了大量的 JavaScript 文件,这两天 Visual Studio 2015 ...

  6. Cheatsheet: 2015 09.01 ~ 09.30

    Web A Guide to Vanilla Ajax Without jQuery Gulp for Beginners A Detailed Walkthrough of ASP.net MVC ...

  7. Murano Weekly Meeting 2015.09.29

    Meeting time: 2015.September.29th 1:00~2:00 Chairperson:  Serg Melikyan, PTL from Mirantis Meeting s ...

  8. Murano Weekly Meeting 2015.09.22

    Meeting time: 2015.September.22th 1:00~2:00 Chairperson:  Serg Melikyan, PTL from Mirantis Meeting s ...

  9. Murano Weekly Meeting 2015.09.15

    Meeting time: 2015.September.15th 1:00~2:00 Chairperson:  Serg Melikyan, PTL from Mirantis Meeting s ...

  10. Murano Weekly Meeting 2015.09.08

    Meeting time: 2015.September.8th 1:00~2:00 Chairperson:  Serg Melikyan, PTL from Mirantis Meeting su ...

随机推荐

  1. PHP文件系统概述

    >> 本文固定链接: http://php.ncong.com/php_course/file/wenjianxitong.html >> 转载请注明: 恩聪php 2014年 ...

  2. Python学习笔记:05类

    类 Python是面向对象的语言,面向对象最重要的三个优点有: 多态:多态使对象具备不同的行为方式.(可以认为声明了接口,但是实现方式可能多样) 封装:封装是对全局作用域中隐藏多余信息的原则(创建对象 ...

  3. js获取ip方法

    <script type="text/javascript" src="http://counter.sina.com.cn/ip/" charset=& ...

  4. HDU1372:Knight Moves(经典BFS题)

    HDU1372:Knight Moves(BFS)   Time Limit:3000MS     Memory Limit:0KB     64bit IO Format:%lld & %l ...

  5. git的使用说明详解

    http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/001375840202368c7 ...

  6. Hybrid----优秀开源代码解读之JS与iOS Native Code互调的优雅实现方案-备

    本篇为大家介绍一个优秀的开源小项目:WebViewJavascriptBridge. 它优雅地实现了在使用UIWebView时JS与ios 的ObjC nativecode之间的互调,支持消息发送.接 ...

  7. 实现一个基于tcc/tlink的简单的编译链接工具

    一.基础研究 在这里我们需要提供一套新的c语言开发工具cc,它支持的c程序不是从main开始运行而是从CMain开始运行. 书上已经对该工具程序进行了需求分析:(1)要在屏幕中间显示彩色的字符串:(2 ...

  8. Es kibana

    http://kibana.logstash.es/content/kibana/v4/setup/production.html

  9. cloudstack的ZONE删除不掉?来这招吧

    老是提示什么物理网络被使用之类的, 可以进数据库去直接删除. I want to delete a zone,by this way:(1)delete all VMs in zone.(2)dele ...

  10. Delphi GDI或图像处理的博客

    http://blog.csdn.net/w1028489713/article/category/1918251