你要保守你心,胜过保守一切,因为一生的果效,是由心发出的。————O(∩_∩)O...

...O(∩_∩)O...老师因有事下午没来上课,今天就只把中午讲的知识总结一下。由于昨天只是讲了JavaScript的一些基础入门知识点,所以今天就详细地总结一下Javascript的基础。

Javascript语言组成:

ECMAScript:描述了该语言的语法和基本对象。
DOM(Document Object Model):文档对象模型,描述处理网页内容的方法和接口。
BOM(Browser Object Model) :浏览器对象模型描述与浏览器进行交互的方法和接口。
 
Javascript语言特点:
1.是一种解释性脚本语言(代码不进行预编译)。
2.主要用来向HTML(标准通用标记语言下的一个应用)页面添加交互行为。
3.可以直接嵌入HTML页面,但写成单独的js文件有利于结构和行为的分离。
4.跨平台特性,在绝大多数浏览器的支持下,可以在多种平台下运行(如Windows、Linux、Mac、Android、iOS等)。
 
Javascript数据类型
 
1.命名规则(和C#基本一样)
只能由字母、数字、$和下划线组成,并且第一个字符必须是字母或下划线。
区分大小写,不区分双引号和单引号。
不能使用关键字作为变量名。
Javascript脚本语言中只提供了6种类型:
  • Undefined   未被定义类型
  • Boolean      布尔类型
  • String         字符串类型
  • Number      数字类型
  • Object        引用类型
  • Function     方法类型
注:在使用变量之前,必须先进行变量的声明和定义,声明变量使用关键字var,可以同时声明多个变量
 
2.运算符(和C#基本一样)
Javascript语言的运算符主要分为:算数运算符、比较运算符、逻辑运算符。
算术运算符包括:+、-、*、/、%、++、--
比较运算符包括:>、<、==、>=、!=
逻辑运算符包括:||(或)、&&(和)、!(非)
 注:“=”表示赋值  ““==”表示两边比较的值,"==="表示两边的值必须是同一类型
 
3.程序结构(和C#基本一样)
在Javascript脚本语言中,只提供了两种结构:条件结构(If、Switch-Case)、循环结构(For、While、do-while)
 
 查看类型
  • 当text=0时,打印出Number;当为空字符串时打印出string,为null打印出object
var text = 0;
alert(typeof text)

类型转换(JS中可以把任意类型转换为Boolean类型,数字类型除了0之外都是true,反之是false)

  • 如果不赋值或赋值null或赋值undefined,则都是打印出的true,
var u

alert(u == undefined);
  • 字符串转布尔类型,字符串非空时返回True,否则返回False
var s = "hello";
var b = Boolean(s);
alert(b);
  • 空值转换数字类型(Number())
var b = null;
alert(Number(b));
  • 转换浮点类型(ParseFloat()、ParseInt()转换整数类型)
 var s = "123.567";
alert(parseFloat(s));
  • 凡是和字符串相连的都将转换为字符串
      var name = 'Join';
var num = 123;
alert( typeof (name+num));
  • 任意类型都可以转字符串(tostring())

toLocaleString()转本地语言          tostring(2)转为二进制

var b = true;
alert(b.toString());
alert(name.toLocaleString());
  • function方法

任何方法都以function开头。可以在方法里用return返回,并在方法外接收。

 function SayHi(name, message)
{
alert("Hello"+name+"mesg:"+message); }
SayHi("Rocky", "123");

调用方法时,参数要和方法体里一一相对。

function howManyArgs()
{
alert(arguments[0]+arguments[1]+arguments[2]);
} howManyArgs(1,2,3);

注:在Javascript中没有方法重载的概念,名字相同,参数不同,也将会打印出最后一个方法。

程序结构中没有块级作用域(可以在循环语句外调用i)

for (var i = 0; i < 10; i++)
{ } alert(i);

数组类型

定义数组的几种方法

1. var 数组名=new Array(具体长度)可以用for遍历出来,也可以直接alert(数组名)打印出来。

  var colors = new Array(3);//设置数组的长度。
colors[0] = "red";
colors[1] = "blue";
colors[2] = "yellow";
for (var i = 0; i <colors. length; i++)//遍历出来
{
alert(colors[i]);
}

2.var 数组名=new Array(值1,值2...值n)

var colors1 = new Array("red", "blue", "yellow");
for (var i = 0; i < colors1.length; i++)
{
alert(colors[i]);
}

3.可以简写:var 数组名=[值1,值2...值n]。

push(后进后出,追加到数组后面)

pop(从数组的末尾移除最后一项)

shift(取得数组中的第一项)

        var colo = ["red", "blue", "yellow"];

        colo.push("张三", "李四");
colo.pop();
alert(colo.shift());
alert(colo);

substring()第二个参数指定的是字符串最后一个字符后面的位置

substr(n,m)n开始位置,m截取长度

var str = "Woshiunib";
alert(str.substring(1, 3));
alert(str.substr(1, 3));

排序:

 升序(sort())

var values = [1, 3, 2, -9, 5, 11];
function compare(v1, v2) {
if (v1 < v2) {
return -1;
}
else if (v1 > v2) {
return 1;
}
else {
return 0;
}
}
values.sort(compare);
alert(values);

降序:在方法体里取反。

var values = [1, 3, 2, -9, 5, 11];
function compare(v1, v2) {
if (v1 < v2) {
return 1;
}
else if (v1 > v2) {
return -1;
}
else {
return 0;
}
}
values.sort(compare);
alert(values);

倒序:(reverse())

var values = [1, 3, 2, -9, 5, 11];
function compare(v1, v2) {
if (v1 < v2) {
return 1;
}
else if (v1 > v2) {
return -1;
}
else {
return 0;
}
}
values.reverse(values);
alert(values);

判断是否为数字(用IsNaN())

var num1 = "Hello";
alert(isNaN(num1));

昨天由于时间的关系,没有写完,所以这是补的昨天的博客总结,今天晚上在继续吧!加油!O(∩_∩)O...

 
 

JavaScript知识(二)的更多相关文章

  1. 快速掌握JavaScript面试基础知识(二)

    译者按: 总结了大量JavaScript基本知识点,很有用! 原文: The Definitive JavaScript Handbook for your next developer interv ...

  2. WEBBASE篇: 第十一篇, JavaScript知识6

    JavaScript 知识6 一, String 对象 1,分隔字符串, 函数: split(seperator) 作用: 将字符串,通过seperator 拆分成一个数组: eg: var msg= ...

  3. WEBBASE篇: 第十篇, JavaScript知识5

    JavaScript知识5 <!doctype html> <html lang="en"> <head> <meta charset=& ...

  4. 学习javascript数据结构(二)——链表

    前言 人生总是直向前行走,从不留下什么. 原文地址:学习javascript数据结构(二)--链表 博主博客地址:Damonare的个人博客 正文 链表简介 上一篇博客-学习javascript数据结 ...

  5. 初探JavaScript(二)——JS如何动态操控HTML

    除去五一三天,我已经和<JavaScript Dom编程艺术>磨合了六天,第一印象很好.慢慢的,我发现这是一块排骨,除了肉还有骨头.遇到不解的地方就会多看几遍,实在不懂的先跳过,毕竟,初次 ...

  6. 【原文】前端程序员必须知道的高性能Javascript知识

    原文:前端程序员必须知道的高性能Javascript知识 想必大家都知道,JavaScrip是全栈开发语言,浏览器,手机,服务器端都可以看到JS的身影. 本文会分享一些高效的JavaScript的最佳 ...

  7. 《jQuery风暴》第2章 必须知道的JavaScript知识

    第2章 必须知道的JavaScript知识 JavaScript是jQuery应用的基础,掌握JavaScript这门语言是使用jQuery的基础条件.本章不会全面细致的讲解JavaScript的全部 ...

  8. Javascript知识——事件

    O(∩_∩)O~~又是新的一周开始了,今天还是在继续学习Javascript知识,今天主要讲了事件的知识.现在就总结下吧. 事件 事件一般是用于浏览器和用户操作进行交互.最早是 IE 和 Netsca ...

  9. Javascript知识四(DOM)

     [箴 10:4] 手懒的,要受贫穷:手勤的,却要富足. He becometh poor that dealeth with a slack hand: but the hand of the di ...

  10. 从头开始学JavaScript (十二)——Array类型

    原文:从头开始学JavaScript (十二)--Array类型 一.数组的创建 注:ECMAscript数组的每一项都可以保存任何类型的数据 1.1Array构造函数 var colors = ne ...

随机推荐

  1. 使用JS控制struts的日期控件datetimepicker

    功能需求:页面主要有两个日历框,一个是当前日期,一个是去年同期,要求当用户改变当前日期时,同步修改去年同期为当前日期-1年. 当时刚接触到需求的第一时间想到的就是为< sx:datetimepi ...

  2. WISE安装程序增加注册控制

    我做安装程序,一直用的WISE 9.最近为一个用户提供安装程序时,公司要求对安装程序增加控制,避免用户到处安装,增加公司服务的压力.因此,我在WISE制作的安装程序中增加了注册码校验控制,不能给出正确 ...

  3. Boost环境配置及遇到的问题解决方案

    1.模块/工具简介 Boost库是一个跨平台,开源并且完全免费的C++库,内容涵盖字符串处理.正则表达式.容器与数据结构.并发编程.函数式编程.泛型编程.设计模式实现等许多领域,使得实际的开发更加灵活 ...

  4. poj3267--The Cow Lexicon(dp:字符串组合)

    The Cow Lexicon Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 8211   Accepted: 3864 D ...

  5. google自定义站内搜索

    ttps://www.google.com/cse/docs/cref.html?hl=zh-cn 重要表单参数: action 字段:您希望存储结果的网址(在该例中,我们使用 http://www. ...

  6. .NET程序员生活开始

    不知不觉,开始踏入程序员生活了!加油吧.有关Session的好文章: 最近这两天被一个Web Farm环境下的Session处理问题虐得很痛苦,网上到处找解决方案,在无意中翻看到这篇文章,感觉很不错, ...

  7. DOM 样式操作

    通过js动态的修改样式 更新样式的方法:一.使用.style方法修改样式,缺点是使样式混杂在js中,再次修改不易.二.更新class属性,更改样式.三.一次性更改很多元素样式(如换肤操作),更改样式表 ...

  8. 使用logstash收集日志的可靠性验证

    实时计算里,需要对日志实时收集,logstash可以做到.目前的版本是1.4.2,官方文档在http://www.logstash.net/docs/1.4.2/,里面有详细的配置说明,使用也很简单. ...

  9. CSS3 border属性的妙用

    .ribbon { background: #45c9c8; position: absolute; width: 75px; height: 25px; line-height: 25px; top ...

  10. UIPasteboard 粘贴板

    UIPasteboard *pasteboard = pasteboard.string = self.label.text;