什么是JavaScript?

我们可以从几个方面去说JavaScript是什么:

  • 基于对象

    • javaScript中内置了许多对象供我们使用【String、Date、Array】等等
    • javaScript也允许我们自己自定义对象
  • 事件驱动
    • 当用户触发执行某些动作的时候【鼠标单机、鼠标移动】,javaScript提供了监听这些事件的机制。当用户触发的时候,就执行我们自己写的代码。
  • 解释性语言
    • javaScript代码是由浏览器解析的,并不需要编译。
  • 基于浏览器的动态交互技术
    • 既然javaScript是由浏览器解析的,那么它肯定要基于浏览器。javaScript**让网页变得更加“灵活**”
  • 弱类型
    • 像java、c++等编译型语言,要先定义变量,后使用。javaScript能够直接使用,不需要先定义

JavaScript变量类型

javaScript变量可分为三种类型:

  • 基本类型【number、string、boolean】

    • javaScript是弱类型语言,在运行的时候才知道具体的类型是什么。所有类型都用var来修饰。
  • 特殊类型【null、undefined】
    • 当定义了变量,没有任何赋值的时候,该变量就是undefined类型
  • 特殊类型【数组、对象、函数】

javaScript对象的类型

在JavaScript中对象的类型可分为4种:

  • 内置对象【String、Math、Array】
  • 自定义对象【程序员自己创建的对象】
  • 浏览器对象【windows、document、history、status等等与浏览器相关的对象】
  • ActiveXObject(XMLHttpRequest)对象【异步对象,使用AJAX用到的对象,使用该对象与服务器进行异步交互】

定义函数三种方式

函数是属于特殊类型的一种,在另外一篇博文已经讲解了创建对象、创建类的几种方式,可参考http://blog.csdn.net/hon_3y/article/details/69362242

值得注意的是:javaScript定义函数的时候,参数的类型是不用声明的!

正常方式

下面就定义了一个名称为mysum的函数

        function mysum(num1,num2){
return num1 + num2;
}
var myresult = mysum(100,200);
alert("myresult="+myresult);

Function定义

在JavaScript中, 一切皆是对象,函数也可以用一个对象来代表:Function,我们可以使用Function来创建对象:

函数参数全都是字符串,最后一个字符串是方法体


var youresult = new Function("num1","num2","return num1+num2");
alert( youresult(1000,2000) );

由于这种方法写起来并不好些,可读性也不太好,因此很少使用【不推荐使用】


匿名创建函数

其实这种和第一种差不多,只不过是将一个无名的函数赋值给一个变量。那么这个变量就代表了这个函数。



var theyresult = function(num1,num2){
return num1 + num2;
}
alert( theyresult(10000,20000) );

theyresult这个变量就代表了函数。


JavaScript总体的介绍【JavaScript介绍、定义函数方式、对象类型、变量类型】的更多相关文章

  1. Entity Framework 6 Recipes 2nd Edition(11-6)译 -> 从一个”模型定义”函数里返回一个复杂类型

    11-6.从一个”模型定义”函数里返回一个复杂类型 问题 想要从一个”模型定义”函数返回一个复杂类型 解决方案 假设我们有一个病人(patient)和他们访客(visit)的模型,如 Figure 1 ...

  2. Javascript学习笔记:3种定义函数的方式

    ①使用函数声明语法定义函数 function sum(num1,num2){ return num1+num2; } ②使用函数表达式定义函数 var sum=function(num1,num2){ ...

  3. 深入理解javascript原型和闭包(2)——函数和对象的关系

    上文(理解javascript原型和作用域系列(1)——一切都是对象)已经提到,函数就是对象的一种,因为通过instanceof函数可以判断. var fn = function () { }; co ...

  4. 深入理解javascript原型和闭包(2)——函数与对象的关系

    上文(理解javascript原型和作用域系列(1)——一切都是对象)已经提到,函数就是对象的一种,因为通过instanceof函数可以判断. var fn = function () { }; co ...

  5. js定义函数方式有。。。

    1,常见方式 function  fun(data,...){ console.log(data); } 注:随处可调用 2. 函数直接定义函数 var fun = function (data,.. ...

  6. C语言函数返回值和变量类型

    前言 最近在刷题,在写矩阵的快速幂的题时,对于返回值是数组的程序,写的十分冗杂.借此机会,重新梳理下C语言中函数的返回值与变量类型的关系. 按照变量的寿命,可以分为三种类型 1.静态变量 寿命从程序开 ...

  7. javascript——定义函数方式

    1:有名函数定义方式 2:匿名函数定义方法 https://www.cnblogs.com/wl0000-03/p/6050108.html console.log(add(3,6)); (funct ...

  8. Javascript基础系列之(七)函数(对象和属性)

    包含在对象里的数据可以通过两种方式来访问 既属性的对象(property)和方法(method) 属性是隶属于某个特定对象的变量,方法则是某个特定对象才能调运的函数. 对象是由一些彼此相关的属性和方法 ...

  9. JavaScript笔记02——基本语法(包括函数、对象、数组等)

    Doing Math & Logic Conditional & Looping Functions Objects Arrays Doing Math & Logic 1.J ...

随机推荐

  1. mysql日期函数 当前日期 curdate() , 当前年 year(curdate()), 取date的年份 year(date) ,取date的月份 month(date)

    获取系统当前日期时间: sysdate() 获取系统当前日期:curdate() 获取系统当前时间:curtime() 获取给定日期的年份: year(date) 获取给定日期的月份:month(da ...

  2. 弹性伸缩布局-flex

    弹性伸缩布局-flex 引言:本文主要参照阮一峰的网络日志 .郭锦荣的博客总结完成. 正文: 布局的传统解决方案,基于盒状模型,依赖 display 属性 + position属性 + float属性 ...

  3. WeQuant交易策略—EMA指标

    策略名称:EMA指标策略关键词:指数移动平均.双均线.动态止损.方法:1)用快慢两条指数移动平均线的交叉作为买入卖出信号:2)快线自下而上穿过慢线,买入:自上而下穿过慢线,卖出:3)持仓期间计算净值的 ...

  4. spring学习笔记1

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAATQAAAEBCAIAAAB5VM7WAAAgAElEQVR4nOy9Z3gc13n3zZT3efPESZ

  5. Visual Studio Code 配置C++环境

    Visual Studio Code (简称 VS Code / VSC) 是一款免费开源的现代化轻量级代码编辑器,支持几乎所有主流的开发语言的语法高亮.智能代码补全.自定义热键.括号匹配.代码片段. ...

  6. 震惊!WIN2003存在后门大全,提权成功率高

     从某种意义上说,服务器被攻击是不可避免的,甚至被控制也情有可原.但绝对不能容忍的是,服务器被植入后门,攻击者如入无人之境,而管理者去浑然不觉.本文将对当前比较流行的后门技术进行解析,知己知彼方能杜绝 ...

  7. shell之参数传递

    我们可以在执行 Shell 脚本时,向脚本传递参数,脚本内获取参数的格式为:$n.n 代表一个数字,1 为执行脚本的第一个参数,2 为执行脚本的第二个参数,以此类推-- 实例 以下实例我们向脚本传递三 ...

  8. UWP 手绘视频创作工具 “来画Pro” 技术分享系列

    开篇先来说一下我和来画的故事,以及写这篇文章的初衷. 今年年初时,我还在北京,在 Face++,做着人脸识别技术的 Windows 和 Android 端,做着人工智能终将实现世间所有美好的梦.这时的 ...

  9. Flink JobManager HA模式部署(基于Standalone)

    参考文章:https://ci.apache.org/projects/flink/flink-docs-release-1.3/setup/jobmanager_high_availability. ...

  10. .Net Mvc实现各种表格随意切换插件

    一套Js代码,.只要改参数 在3种表格之间任意切换-(使用Js面向对象封装,可重写方法) 任意表格皮肤随便切换 flextgrid/bootstrapt/jqgrid 1   001 @{ 002   ...