一、导读

简介:JavaScript简称js,是基于对象和事件驱动的脚本语言,主要运用于客户端。原名LiveScript,本身和Java没有任何关系,但语法上很类似。

特点:交互性(它可以做的就是信息的互动性);

      安全性(不允许直接访问本地硬盘);

      跨平台性(只要是可以解释JS的浏览器都可以执行,与平台无关);

二、JavaScript与Java不同

1、JS是Netscape(网景)公司的产品,前身是LiveScript,Java是Sun公司的产品,现在是Oracle公司的产品。
2、JS是基于对象,Java是面向对象。
3、JS只需要解释就可以执行,Java需要先编译成字节码文件,再执行。
4、JS是弱类型,Java是强类型(每种数据都要规定好类型,而每种数据类型都设定好了空间大小)。

三、JavaScript与Html的结合

方式1:将JavaScript代码封装到<script>标签中

方式2:将JavaScript代码封装到js文件中,并通过<script>中的src属性进行导入。注意:如果<script>标签中使用了src属性,那么该标签的JavaScript代码将不会被执行,所以导入js文件都是单独<script>标签来实现。

四、通常高级程序设计语言所包含的语法内容  

关键字:被赋予特殊含义的单词
标识符:用于标识数据表达式的符号。通常理解为在程序中自定义的名称。比如变量名、函数名。
注释:注解说明程序。用于调试程序。
变量:用于标识内存中的一片空间,用于存储数据,该空间中的数据是可变的。(当数据不确定时就可以使用)
运算符:让数据参与运算的符号。
语句:用于对程序的运行流程进行控制的表达式。
函数:用于对功能代码的封装,提高复用性。
数组:对多数据进行存储,便于操作。即容器。
对象:只要是基于对象的语言或面向对象的语言,都存在对象的概念。对象就是一个封装体:既可以封装数据,又可以封装函数。
注:这些都是高级设计语言具备的共性内容,只不过表现形式不同而已。

五、js变量:使用关键字var(variable的简写)来定义变量

由于是弱类型非严谨的语言,所以只需使用“var 变量名 = 变量值”的形式就可以进行变量的申明。
如:

var x = 3;//定义一个变量x,并初始化值为number类型3
x = "abc";//将变量x的值改为string类型
x = 3.45;
x = 'c';
x = true;//布尔类型

js变量的类型没有固定的数据类型,所以称为弱类型。若定义时未定义变量值,则为 undefined类型。

六、运算符

算术运算符:+ - * / % ++ --(加减乘除取余自增自减)
注:和其他语言类似,但由于是弱类型,+、-等运算可以在不同类型之间进行:如

 var x = 3;
var y = "abc";
var z1 = x+y;//那么z1的值为“3abc”
var z2 = y+x;//z2的值为“abc3” //false用0或null代表,而非0非空就是true,默认是1,所以可以参与运算。
var t = true;
var f = false;
var w = 3+false;//w就等于3
var q = 3 - true;//q就为2 //.....等等不同类型之间的运算,其实是先转换为同类型再运算。

赋值运算 := 、+=、-=、/=、%=
比较运算符 :<、>、==、<=、>=、!=
逻辑运算符 :&(与运算) 、&& 、|(或运算) 、|| 、 !(非)
位运算符:& 、|、 ^(异或) 、>>(带符号右移) 、<<(左移)、 >>>(无符号右移)
三元运算符:表达式?(true)结果a:(false)结果b;

七、语句&结构

顺序结构
判断结构:if/else语句
选择结构:switch/case语句
循环结构:while语句、for语句
其他语句:
注:可以对循环语句进行标号,以便控制。

八、数组

js的数组时可变长度的,且可以存储不同类型的元素,但建议存储同一类型元素。
方式1:var arr = [1,2,3,5,9]; //数组属于object类型

方式2:使用js中的对象Array对象来完成定义。
var arr = new Array();//等价于var arr = [];
var arr1 = new Array(5);//定义长度为5的数组
var arr2 = new Array(5,6,7);//等价于var arr = [5,6,7];

九、函数

通过关键字来定义。function 函数名(参数列表){
  函数体;
  return 返回值;(没有返回值就不用写返回语句)
}

如:

 function add(x,y){
var z = x + y;
return z;
}

细节:1、定义几个实参就传递几个参数。2、函数中传入的参数其实是用一个数组存储起来了:arguments.3、函数本身是一个对象,而函数名就是这个函数对象的引用(打印出来不是地址值,而是该函数的代码体)。

十、动态函数

其实使用的是js内置的一个对象Function.
var add = new Function("x,y","var sum;sum=x+y;return sum;");
var x = add(7,8);
与一般函数的区别在于,动态函数的参数列表和函数体都是通过字符串指定的,可以通过改变字符串来改变函数的定义,但实际用得并不多。

十一、匿名函数

没有名字的函数,函数的简写形式。如:

var add = function(a,b){
return a+b;
}

JavaScript的简单入门的更多相关文章

  1. javascript正则简单入门

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  2. JavaScript简单入门(补充篇)

    本文是对上一篇 JavaScript简单入门 的一些细节补充. 一.全局变量和局部变量 在<script>标签内定义的变量是当前页面中的全局变量.即 <script>标签可以直 ...

  3. JavaScript 10分钟入门

    JavaScript 10分钟入门 随着公司内部技术分享(JS进阶)投票的失利,先译一篇不错的JS入门博文,方便不太了解JS的童鞋快速学习和掌握这门神奇的语言. 以下为译文,原文地址:http://w ...

  4. JavaScript面向对象轻松入门之封装(demo by ES5、ES6、TypeScript)

    本章默认大家已经看过作者的前一篇文章 <JavaScript面向对象轻松入门之抽象> 为什么要封装? 封装(Encapsulation)就是把对象的内部属性和方法隐藏起来,外部代码访问该对 ...

  5. HCharts随笔之简单入门

    此处可以对比我的另一个Echars简单入门 直接上源码 <!DOCTYPE html> <html> <head> <meta http-equiv=&quo ...

  6. EChart.js 简单入门

    EChart.js 简单入门 最近有一个统计的项目要做,在前端的数据需要用图表的形式展示.网上搜索了一下,发现有几种统计图库. MSChart   这个是Visual Studio里的自带控件,使用比 ...

  7. Vue的简单入门

    Vue的简单入门 一.什么是Vue? vue.js也一个渐进式JavaScript框架,可以独立完成前后端分离式web项目 渐进式:vue可以从小到控制页面中的一个变量后到页面中一块内容再到整个页面, ...

  8. ECharts.js学习(一) 简单入门

    EChart.js 简单入门 最近有一个统计的项目要做,在前端的数据需要用图表的形式展示.网上搜索了一下,发现有几种统计图库. MSChart   这个是Visual Studio里的自带控件,使用比 ...

  9. Bootstrap简单入门

    Bootstrap简单入门 BootStrap基本模板 <!DOCTYPE html> <html> <head> <meta charset="U ...

随机推荐

  1. 2964:日历问题-poj

    2964:日历问题 总时间限制:  1000ms 内存限制:  65536kB 描述 在我们现在使用的日历中, 闰年被定义为能被4整除的年份,但是能被100整除而不能被400整除的年是例外,它们不是闰 ...

  2. CCF认证考试——折点计数

    描述:简单题 #include<iostream> using namespace std; int main() { ], n, count = ; cin >> n; ; ...

  3. cinder块存储控制节点

    #cinder块存储控制节点 openstack pike 安装 目录汇总 http://www.cnblogs.com/elvi/p/7613861.html #cinder块存储控制节点 #在控制 ...

  4. 【LintCode·容易】用栈模拟汉诺塔问题

    用栈模拟汉诺塔问题 描述 在经典的汉诺塔问题中,有 3 个塔和 N 个可用来堆砌成塔的不同大小的盘子.要求盘子必须按照从小到大的顺序从上往下堆 (如:任意一个盘子,其必须堆在比它大的盘子上面).同时, ...

  5. springboot添加swagger2组件

    swagger2是一个可以构建和调试RESTful API文档的组件,利用swagger2的注解可以快速的在项目中构建Api文档,并且提供了测试API的功能 1,引入依赖 <dependency ...

  6. 使用vee-validate表单插件是如何设置中文提示?

    最近在写vue表单验证的时候,在网上找到一款不错的插件vee-validate,在使用的过程中发现配置不了中文提示,这就很苦恼了,基本上网上的配置办法我都看过,都是有问题的,比如这种 import z ...

  7. java变量和作用域以及成员变量的默认初始化

    Java中的变量有成员变量和局部变量,定义在类中方法之外的变量成为成员变量或者成员字段(域),表示一个类所具有的属性,定义为类的成员变量的变量的作用于是整个类,该变量在定义的时候不需要初始化,在使用前 ...

  8. 关于promise的详细讲解

    到处是回调函数,代码非常臃肿难看, Promise 主要用来解决这种编程方式, 将某些代码封装于内部. Promise 直译为"承诺",但一般直接称为 Promise; 代码的可读 ...

  9. 从 Bridge 到 OVS,探索虚拟交换机

    Linux Bridge 和物理网络一样,虚拟网络要通信,必须借助一些交换设备来转发数据.因此,对于网络虚拟化来说,交换设备的虚拟化是很关键的一环. 上文「网络虚拟化」已经大致介绍了 Linux 内核 ...

  10. 二、spring Boot构建的Web应用中,基于MySQL数据库的几种数据库连接方式进行介绍

    包括JDBC.JPA.MyBatis.多数据源和事务. 一.JDBC 连接数据库 1.属性配置文件(application.properties) spring.datasource.url=jdbc ...