JavaScript语法

八、函数

  函数就是完成某个功能的一组语句,函数由关键字function + 函数名 + 加一组参数定义;

  函数在定义后可以被重复调用,通常将常用的功能写成一个函数,利用函数可以使代码的组织结构更多清晰。

  语法:function funName (arg0, arg1, … argN){
       //statements
     }

  例子:

function sum(a,b){
document.write(a + b);
}
sum(1,2);

  使用 return 语句从函数返回值

  例子:

function sum (num1, num2){
return num1 + num2;
}
var s = sum(1, 2);
alert(s);

  注意:

    ①位于return 语句之后的任何代码都永远不会执行!

    ②在JavaScript中,不一定要指定返回值!

  

  递归函数:在函数里面调用自己 从而实现循环的效果

function test(num){
if(num == 0 || num == 1){
return 1;
}
return num*test(num-1);
}
document.write("5的阶乘为:"+test(5));

九、变量的作用域

变量既可以是全局,也可以是局部的。

全局变量:可以在脚本中的任何位置被引用,一旦你在某个脚本里声明了全局变量,你就可以在这个脚本的任何位置(包括函数内部)引用它,全局变量的作用域是整个脚本。

局部变量:只存在于对它做出声明的函数内部,在函数的外部无法相用它,局部变量的作用域仅限于函数内部。

var global = "global";    //全局变量
function test(){
var local="local"; //局部变量
global2="global2"; //全局变量
}

在函数外用var声明的变量是全局变量
定义在函数当中,但是没有用var声明的是全局变量
定义在函数当中,用var声明的是局部变量

十、JavaScript 内部函数

在JavaScript中有一些工功能是很常用的,他们以全局函数的形式提供给用户,这些函数称为内部函数。

  1.eval()

  eval 接受一个字符串类型的参数,将这个字符串作为代码在上下文环境中执行,并返回执行的结果。

  例子:

var i = 1;
eval(“i = i + 1”);
eval(“alert(i);”);

  说明:该方法只接受原始字符串作为参数,如果 string 参数不是原始字符串,那么该方法将不作任何改变地返回。因此请不要为 eval() 函数传递 String 对象来作为参数。

  提示:虽然 eval() 的功能非常强大,但在实际使用中用到它的情况并不多。

  

  2.parseInt 和 parseFloat 将字符串转换为数字

  parseInt() 函数可解析一个字符串,并返回一个整数。

  parseInt() : W3School

  parseFloat() 函数可解析一个字符串,并返回一个浮点数。

  parseFloat() : W3School

  3.escape 和 unescape   进行URL编码和解码 

  escape() 函数可对字符串进行编码,这样就可以在所有的计算机上读取该字符串。

  unescape() 函数可对通过 escape() 编码的字符串进行解码。

  例子:

var test="https://www.baidu.com/";

test=escape(test);
document.write (test + "<br />"); test=unescape(test);
document.write(test);

  结果:

https%3A//www.baidu.com/
https://www.baidu.com/

十一、JavaScript 调试

  在编写 JavaScript 时,如果没有调试工具将是一件很痛苦的事情。

  没有调试工具是很难去编写 JavaScript 程序的。

  你的代码可能包含语法错误,逻辑错误,如果没有调试工具,这些错误比较难于发现。

  通常,如果 JavaScript 出现错误,是不会有提示信息,这样你就无法找到代码错误的位置。

  

  JavaScript 调试工具

  在程序代码中寻找错误叫做代码调试。

  调试很难,但幸运的是,很多浏览器都内置了调试工具。

  内置的调试工具可以开始或关闭,严重的错误信息会发送给用户。

  有了调试工具,我们就可以设置断点 (代码停止执行的位置), 且可以在代码执行时检测变量。

  浏览器启用调试工具一般是按下 F12 键,并在调试菜单中选择 "Console" 。

  例子:

console.log("hello world!");

JavaScript基础知识总结(四)的更多相关文章

  1. Jquery源码中的Javascript基础知识(四)— jQuery.fn.init方法

    $() 即调用了jQuery.fn.init方法 jQuery = function( selector, context ) { return new jQuery.fn.init( selecto ...

  2. 学习javascript基础知识系列第三节 - ()()用法

    总目录:通过一段代码学习javascript基础知识系列 注意: 为了便于执行和演示,建议使用chrome浏览器,按F12,然后按Esc(或手动选择)打开console,在console进行执行和演示 ...

  3. Javascript基础知识总结一

    Javascript基础知识总结一 <!DOCTYPE html> <html> <head lang="en"> <meta chars ...

  4. 学习javascript基础知识系列第二节 - this用法

    通过一段代码学习javascript基础知识系列 第二节 - this用法 this是面向对象语言中的一个重要概念,在JAVA,C#等大型语言中,this固定指向运行时的当前对象.但是在javascr ...

  5. IM开发基础知识补课(四):正确理解HTTP短连接中的Cookie、Session和Token

    本文引用了简书作者“骑小猪看流星”技术文章“Cookie.Session.Token那点事儿”的部分内容,感谢原作者. 1.前言 众所周之,IM是个典型的快速数据流交换系统,当今主流IM系统(尤其移动 ...

  6. JavaScript 基础知识 - BOM篇

    前言 本篇文章是JavaScript基础知识的BOM篇,如果前面的<JavaScript基础知识-DOM篇>看完了,现在就可以学习BOM了. 注意: 所有的案例都在这里链接: 提取密码密码 ...

  7. JavaScript 基础 学习 (四)

    JavaScript 基础 学习 (四) 解绑事件 dom级 事件解绑 ​ 元素.on事件类型 = null ​ 因为赋值的关系,所以给事件赋值为 null 的时候 ​ 事件触发的时候,就没有事件处理 ...

  8. JavaScript基础知识必知!!!

    JavaScript一种直译式脚本语言,是一种动态类型.弱类型.基于原型的语言,内置支持类型. JS作用:表单验证,减轻服务端的压力:添加页面动画效果:动态更改页面内容:Ajax网络请求. 下面简单介 ...

  9. 林大妈的JavaScript基础知识(三):JavaScript编程(2)函数

    JavaScript是一门函数式的面向对象编程语言.了解函数将会是了解对象创建和操作.原型及原型方法.模块化编程等的重要基础.函数包含一组语句,它的主要功能是代码复用.隐藏信息和组合调用.我们编程就是 ...

  10. JavaScript——基础知识,开始我们的js编程之旅吧!

    JavaScript基础第01天 1. 编程语言 编程语言: 可以通过类似于人类语言的"语言"来控制计算机,让计算机为我们做事情,这样的语言就叫做编程语言(Programming ...

随机推荐

  1. 快速构建H5单页面切换骨架

    在Web App和Hybrid App横行的时代,为了拥有更好的用户体验,单页面应用顺势而生,单页面应用简称`SPA`,即Single Page Application,就是只有一个HTML页面的应用 ...

  2. Hyper-V3:虚拟机的配置

    在Hyper-V成功新建一台虚拟机,在正式使用之前,必须配置VM使用的硬件资源,并授予用户访问VM的权限等,本文罗列出一些常见的配置,供读者参阅. 一,为虚拟机分配使用的内存 在Hyper-V Man ...

  3. 【原】FMDB源码阅读(二)

    [原]FMDB源码阅读(二) 本文转载请注明出处 -- polobymulberry-博客园 1. 前言 上一篇只是简单地过了一下FMDB一个简单例子的基本流程,并没有涉及到FMDB的所有方方面面,比 ...

  4. [转载]强制不使用“兼容性视图”的HTML代码

    在IE8浏览器以后版本,都有一个"兼容性视图",让不少新技术无法使用.那么如何禁止浏览器自动选择"兼容性视图",强制IE以最高级别的可用模式显示内容呢?下面就介 ...

  5. 浅谈Web自适应

    前言 随着移动设备的普及,移动web在前端工程师们的工作中占有越来越重要的位置.移动设备更新速度频繁,手机厂商繁多,导致的问题是每一台机器的屏幕宽度和分辨率不一样.这给我们在编写前端界面时增加了困难, ...

  6. GitHub管理代码-随笔

    公司一直用的SVN进行项目管理,平时便自己折腾了下Git,这里做下GitHub的最简单的记录... 在git上创建仓库等就免谈了,网上也有好多教程,直接从创建之后记录: 在github的readme文 ...

  7. linux下 lvm 磁盘扩容

    打算给系统装一个oracle,发现磁盘空间不足.在安装系统的时候我选择的是自动分区,系统就会自动以LVM的方式分区.为了保证系统后期的可用性,建议所有新系统安装都采用LVM,之后生产上的设备我也打算这 ...

  8. Linux命令

    系统信息 arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架构(2) uname -r 显示正在使用的内核版本 dmidecode -q 显示硬件系统部件 - (SMBIOS ...

  9. photoshop:无法完成请求 因为暂存盘已满

    今天photoshop打开一个问题,提醒:无法完成请求因为暂存盘已满 不用担心这个问题很好解决可能是你做的图比较大并不需要清理C盘空间 选择:编辑→首选项→暂存盘 设置第一暂存盘为D盘或E盘 总之 第 ...

  10. could not initialize proxy - no Session

    这是一个精典的问题:因为我们在hibernate里面load一个对象出来时,用到的是代理对象,也就是说当我们在执行load方法时并没有发sql语句,而是返回一个proxy对象.只有当们具体用到哪个ge ...