JS基础之开篇

标签: js 基础 | 发表时间:2013-01-16 21:42 | 作者:微冷的雨
出处:http://www.cnblogs.com/

JavaScript是解释型语言,无需编译就可以随时运行,这样哪怕语法有错误,没有语法错误的部分还是能正确运行。

1.JavaScript能做什么?

01, javaScript可以进行表单验证

如果在服务器端进行验证:1,会加重服务器负担2,远程传输带来不必要的网络流量。一般使用javaScript进行客户端验证。

02.使用javascript可以实现交互特效

2.javaScript中数据类型

Boolean(布尔)、Number(数字)、String(字符串)、Undefined(未定义)、Null(空对象)、Object(对象类型)

Undefined类型、Null类型都是只有一个值的数据类型,分别是undefined与null

查看变量的数据类型,使用typeof关键字

例如:typeof(10);//结果为Number,其他变量的类型您可以自己测试。

3.基本类型与引用类型区别(这个我们将在后续课程中讲解)

String也是基本类型,不能为String添加动态属性,而引用类型是可以的。

4.js中null与undefined区别

Undefined表示一个未知状态:

在三种情况下,输出结果为Undefined:

01,      方法没有返回值

02,      变量声明不赋初值也是undefined

03,      另外一种情况就是变量未声明就使用也是undefined

Null表示尚未存在的对象

null是一个有特殊意义的值。可以为变量赋值为null,此时变量的值为“已知状态,不是(undefined)”

Null用来初始化变量,清除变量内容,释放内存。

注意:

Undefined==null;结果为true,但含义不同,因为undefined和null以及0在js中代表的值都是false,所以判定两者相等。

Undefined===null;结果为false,对于“===”先判断类型是否一致,然后判断值是否相等。

如果想在IE中开启脚本调试,可以打开工具→Internet选项→高级,然后将“禁用脚本调试”前的勾去掉确定即可。如下图:

这里顺便提一句:浏览器也有垃圾回收机制。

在js中判断一个变量是否可用的方法:

01,      if(typeof(x)!=’undefined’&&x!=null)

02,      if(x)

说明:当x声明但是没有赋值,或x为null,或x为0是,都表示不可用,

If(x)返回false;

在确定x已经声明的情况下,推荐使用后一种方法,单如果x有可能没有声明,则只能用typeof判断(否则会报错)

5.变量的作用域

在js中声明变量的时候可以加var,也可以不加。

在声明变量的时候如果加var,则在声明范围内有效

如果不加var,则认为是一个“全局变量”,在整个页面内有效。

6.类型转换

ParseInt()遇到第一个不是数字的字符,就省略之后的内容,将为数字的部分进行转换。

例如:var  x1=’34号人’;

          Var x2=’1.23’;

     Var x3=parseInt(x1)+parseInt(x2);

         Alert(x3);//结果为35

判断一个值是否为NaN不能用==或===,必须用函数isNaN(val)

parseFloat(arg)//将指定的字符串,转换成浮点数

Number(arg):把给定的值(任意类型)转换成数字(可以是整数或浮点数);转换的是整个值,而不是 部分值。如果该字符串不能完全转换为整型,则返回NaN。

isNaN(arg)//判断arg是否为一个非数字(NaN),NaN与NaN也不相等。

String(arg)把给定的值(任意类型)转换成字符串。

Boolean(arg):把给定的值(任意类型)转换成Boolean型。

Eval(codeString):将一段字符串的js代码,计算并执行。类似于动态SQL语句。

7.JS调试

使用VS和IE调试JS代码的方法

l  JavaScript的调试,使用VS可以很方便的进行JavaScript的调试,调试时需要注意几点:

  • 确保当前的默认浏览器为IE浏览器。
  • 如果使用的是IE6,确保IE6的调试选项要打开,Internet选项→高级,去掉“禁用脚本调试”前的勾选。
  • 设置断点、监视变量等操作和C#一样。
  • 以调试方式运行网页。F5
  • IE8以后可以使用“开发人员工具”à“脚本调试”,可设断点。
  • FireBug(FireFox浏览器的“开发人员工具”,报错比较准确。)、Chrome浏览器也有“开发人员工具”。(大多数浏览器的最新版本都有“开发人员工具”)
  • 在高版本浏览器下也可以使用console.log(‘内容’);来输出内容。

8.函数声明

JavaScript中声明函数的方式:(无需声明返回值类型)

例如:

Function add(i1,i2){

   Return  i1+i2;   //如果不写return返回的是undefined

}

注意:在js中,自定义函数名不要和js内置、dom内置方法重名,比如selectAll、focus等函数名不要用。

9.arguments对象

首先我们先看下如下案例:

Function  f1(){

    Alert(‘first  f1’);

}

Function  f1(){

   Alert(name);

}

F1();

结果输出undefined.

解释:js中方法不存在重载,如果方法重名的话,会以最后一个定义的为准。

 

本文链接

相关 [js 基础] 推荐:

JS基础之开篇

- - 博客园_首页
JavaScript是解释型语言,无需编译就可以随时运行,这样哪怕语法有错误,没有语法错误的部分还是能正确运行. 1.JavaScript能做什么. 01, javaScript可以进行表单验证. 如果在服务器端进行验证:1,会加重服务器负担2,远程传输带来不必要的网络流量. 一般使用javaScript进行客户端验证.

WebView JS 交互

- - ITeye博客
WebView加jquery做页面会怎么样呢. // 创建WebView对象. // 把programList添加到js的全局对象window中,. // 这样就可以使用window.programList来获取数据. * 定义js回调java函数. // 绑定键盘的向上,向下按钮事件触发相应的js事件.

JS游戏引擎

- 米随随 - HTML5研究小组
If you don’t have anything better to do and want to help fellow redditors interested in JS game dev out, feel free to fork the list and modify it as you like.

來源請求.js

- 红烧鲤鱼 - Blog: timdream
很早以前就想講了,但講了大概又會被戰. 相較於英文維基百科,中文維基百科在社會和歷史條目充滿了 systemic bias. 但是那些主觀論述又不是編輯者有意加進去的,而是某種編輯者存在的社會所給予的暗示(Inception?)與集體共識,而不是原本百科全書應該有的可驗證的事實. 因為是暗示又是共識,所以有自覺的百科編輯者反而是少數;中文維基只好長成現在這個樣子了.

Js删除节点

- - JavaScript - Web前端 - ITeye博客
 方式一:传this参数调用方法:.  方式二:js方法中通过选择器获取节点:. //此处删除的是a节点 }. 方式三:通过jQuery方式获取节点:(尚未测试,有待测试. 此处a标签传this到js中,js通过this(即a节点)取parent(即p节点). (1)p.remove();可直接删除整个p节点.

JS游戏引擎列表

- sku - 酷壳 - CoolShell.cn
这里有一个网址收集了关于JS游戏引擎开发库的一个列表,转过来. 关于使用JS和HTML5做的一些小游戏,可参见《HTML5 小游戏展示》. Name Latest Release License Type Notes The Render Engine 1.5.3 MIT 跨浏览器; 大规模 API; 开源. 2 gameQuery 0.5.1 CC BY-SA 2.5 和 jQuery 一起使用 gTile 0.0.1 Tile based.

Deck JS: HTML5 幻灯片

- L - LinuxTOY
Deck.js 是一组开源的 JavaScript 类库,方便使用现代的 HTML5/CSS3/JS 技术创建幻灯片. 该软件十分适用于开源项目介绍,交互式的方式比单纯的文字说明更简洁易懂. 不废话了,赶紧前往该项目主页去体验 HTML5 时代的幻灯片吧. 分类: Productivity |. 收藏到 del.icio.us |.

JS三维模型库 Three.js

- Le - 开源中国社区最新软件
Three.js 是一款运行在浏览器中的 3D 引擎,你可以用它创建各种三维场景,包括了摄影机、光影、材质等各种对象. 你可以在它的主页上看到许多精采的演示. 不过,这款引擎目前还处在比较不成熟的开发阶段,其不够丰富的 API 以及匮乏的文档增加了初学者的学习难度(尤其是文档的匮乏) 演示:http://mrdoob.github.com/three.js/.

js Grid - 列表插件

- Bloger - 博客园-首页原创精华区
     js Grid - 列表插件.     1)Sponsor Flip Wall With jQuery & CSS一个非常不错的显示数据到网格里的插件. 点击后,缩略图会翻转,然后显示更多信息.      2)TableTree4J 是一个开源的基于javascript的树状菜单和表格控件,实用TableTree4J可以轻易实现带树状折叠效果的表格和树状折叠菜单.

Three js入门教程

- - 译言-电脑/网络/数码科技
译文来源: http://www.21haolou.com/articles/show/140. 我在自己的一些实验性项目中运用了 Three.js,它在处理浏览器3D效果方面表现优异. 通过Three js,你可以创建镜头(Cameras),物体(objects),光线(lights),材质(materials)等等,你还可以选择渲染器:可以使用HTML5的Canvas来绘制场景,也可选择使用WebGL或是SVG来渲染.