JavaScript是一门很优美的语言,今天我们谈一下JavaScript的语法!

   首先我们说一下变量,变量对于没有编程基础的朋友来说可以理解为一个空的盒子,我们首先为这个盒子取一个名字 'box' ;然后我们在盒子里面放一个 数字1,这样我们就拥有了一个名字是 box 的变量;在js中的代码是这样的:

<script>var box = 1;//在js中我们用 = 号来赋值;具体的下面的运算符号我们详细说明;  //需要注意的是js的命名变量与css类似,下面再次为 box 赋值会覆盖上面赋的值!  var box = 2; //现在 box 的值是 2;
</script>

  JavaScript中命名是用 ‘var’ 这个关键字完成的!声明变量需要注意一下几点

  1、变量的首字母必须是由字母(a-z,A-Z)、美元符号($)、或者下划线(_)开头,不能是数字。

  2、后面的可以是字母(a-z,A-Z)、数字(0-9)、美元符号($)、或者下划线(_)都可以;

  3、注意JavaScript对于大小写非常敏感 例如 var name 和var Name 是不同的变量!

  其次我们说一下JavaScript的字符串、数字、布尔型、数组;

      1、字符串

        字符串型是JavaScript中用来表示文本的数据类型,是有Unicode字符、数字和标点组成的一个字符串序列。

        简单来说就是,字符串通常是有引号包含起来的;

        var  a = ‘apple’ 在这里 ‘apple’ 就是一个字符串 当然js属于弱类型语言也可以用双引号这样写 “apple”;

        也可以简单地理解为在js中只要是用引号包含起来的都可以称为字符串;

         在应用中应该注意以下错误:         

<script>alert('me is boy ')//这样浏览器会正确的弹出me is boy  这个字符串;alert('me is' boy ')//这样浏览器就无法弹出窗口,后面的 boy 浏览器无法正常解析就会报错;  // 如果你想在这个字符串中添加一个单引号就需要把外部的单引号换为双引号像这样:  alert("me is boy '")// 这样浏览器输出的就是这样 me is boy ' ;  alert('me is boy \'')// 反斜线“\”这里面属于转移符;  </script>                

      2、数值型 

        数值型是 JavaScript 中用来表示数字的类型, 最基本的数值字面量格式是十进制整数.

        简单来说, 数值型就是我们平时用的数字        

      1.整数var a = 7; // 一个整数2.浮点数值, 就是该数值中必须包含一个小数点,并且小数点后面必须至少有一位数字。var p = 3.1415926; // 一个浮点型var num = .1;    //有效,但不推荐
        如果小数点后面没有跟任何数字(如1.),可以作为整数值来保存。如果浮点数值本身表示的就是一个整数(如1.0),该值会被转为整数。

      3、布尔型 

       1.布尔类型的字面值只有两个,true 和 false

    2.注意:true 和 false 是严格区分大小写的
if(3 > 2){ // 在这个 if 表达式中判断最终得出的结果就是 布尔值alert('3确实大于2');}else{alert('3小于2');
}// 其实最终是这样进行判断的, 如果是 false 则走另一个分支
if(true){alert('3确实大于2');}else{alert('3小于2'); }

     4、数组

      数组, 是一些数据的集合,这些数据也可以是字符串型、数字型、布尔型、或者是复合型。数组中的数据并没有命名,不能通过名字来引用该数据。在数组中,为每个数据都编了一个号(从0开始),为数组的下标(数组的键)。

      简单来说数组就是一个大的变量,这个变量被赋予的值不只是一个,也有可能不是一个类型;

      数组声明用 Array 这个关键字:

      数组分为索引数组与关联数组两种;

      下面我们看索引数组:

var array = new Array('boy','girl','apple',3);

      上面我声明了一个叫做array的数组 里面有三个字符串 与一个数字;在这个数组中从左开始每个元素都有自己编号,就是数组的下标(数组的键),我们可以通过这个下标调出里面的元素。

  注意: 索引数组的 下标(键) 默认是从 0 开始 一直往下递增的;也就是说 boy 对应的下标是0;girl 对应的下标是1;以此类推···

  下面的例子讲述调出 array 里的元素:

//调用一个数组的方法是 数组的名称[元素的下标] 使用中括号把下标写进去;alert(array[0]);//浏览器将弹出一个写着 boy 的窗口;alert(array[1]);//浏览器将弹出一个写着 girl 的窗口;

    我们在来看关联数组;两个的数组最大的区别就是下标不同;关联数组的下标是我们自己命名的我们看个例子:

var list = new Array(); // 先声明一个空数组
list['name'] = 'zhangsan';
list['age'] = 18;
list['area'] = 'hebei';//跟索引数组一样调用关联数组中的元素是输入 关联数组的名字[元素的下标]
alert(list['area']); // 打印 hebei

上面的例子中'name','age','area';是数组list的下标;后面的‘zhangsan’,18,‘hebei’;是下标对应的元素;这样写关联数组未免太麻烦;我们可以用另外一种方式(json格式)写:

//json 格式是用花括号 {} 包裹, 里边的 键 是用有意义的单词来注明var json = {'name':'jack','age':18,'area':'American'};alert(json['name']); // jack

         

  

转载于:https://www.cnblogs.com/ade-Java/p/5879226.html

谈一下JavaScript的语法相关推荐

  1. javascript基础语法——表达式

    前面的话 一般地,关于javascript基础语法,人们听得比较多的术语是操作符和语句.但是,其实还有一个术语经常使用,却很少被提到,这就是javascript表达式(expression).本文将详 ...

  2. VS集成环境中的JavaScript脚本语法检查

    集成在Visual Studio环境中的JavaScript脚本语法检查. 1.可以直接检验js文件,也可以检验html和aspx页面上的脚本语法. 2.集成环境中直接使用,双击定位到语法错误处. 3 ...

  3. javascript基础语法——词法结构

    前面的话 javascript是一门简单的语言,也是一门复杂的语言.说它简单,是因为学会使用它只需片刻功夫:而说它复杂,是因为要真正掌握它则需要数年时间.实际上,前端工程师很大程度上就是指javasc ...

  4. JavaScript基本语法(续)

    JavaScript基本语法续 文章目录 JavaScript基本语法续 一.Javascript组成 二.字符串处理方法 1.字符串合并操作:" + " 2.parseInt() ...

  5. web前端学习:1分钟了解JavaScript基础语法规则

    俗话说,"无规矩不成方圆".用在计算机语言上也同样使用.每种计算机语言都有自己的语法规则,只有遵循语法规则才能写出符合要求的代码.JavaScript也不例外,在使用JavaScr ...

  6. 基于正则表达式的JavaScript/C++语法高亮(js版)

    JavaScript的语法高亮一直是个难点,因为需要语义分析以确定/是除法操作的开始还是正则表达式的开始.目前关于高亮js的语法高亮都不是很理想,尤其是syntaxhighlighter(你待会看到的 ...

  7. JavaScript|JavaScript 高级语法——详细汇总

    JavaScript 高级语法 目录 JavaScript 高级语法 一.变量提升和函数提升 作用域的概念 1. 变量提升 ① 变量提升 ② 变量提升后,与外界同名变量不会相互影响 ③ 多次声明变量 ...

  8. vue|JavaScript let语法

    vue|JavaScript   let语法 let 语句声明一个块级作用域的本地变量,并且可选的将其初始化为一个值. 语法 <span style="color:#333333&qu ...

  9. JavaScript的语法解析与抽象语法树

    抽象语法树(Abstract Syntax Tree)也称为AST语法树,指的是源代码语法所对应的树状结构.也就是说,对于一种具体编程语言下的源代码,通过构建语法树的形式将源代码中的语句映射到树中的每 ...

最新文章

  1. eclipse中出现Context startup failed due to previous errors错误解决方法
  2. 系统接口对接的进度工作应该谁来干_项目的交付进度总是延迟,项目经理找了很久才发现是这4类原因...
  3. 达梦数据源配置_达梦DM8 数据库 DEM(Dameng Enterprise Manager) 安装配置
  4. Phoenix报错(6)Inconsistent namespace mapping properites
  5. vscode 运行vue_Vue初体验
  6. Python音频信号处理 2.使用谱减法去除音频底噪
  7. [html] html5中的meta标签http-equiv属性有什么作用?
  8. 4变形物体_Houdini基础(二)曲线变形物体
  9. -moz火狐 (firefox)CSS
  10. leetcode 《简单》 设计问题 Python实现
  11. 无线通信基础(一):高斯随机变量
  12. hexo博客搭建及主题优化(二)
  13. 接收邮件的服务器称为,接收邮件服务器
  14. 复杂网络-无标度网络BA模型
  15. wifi无线破解之跑pin最详细教程 2017
  16. Android基础:ViewPage
  17. 毕业论文外文文献在哪里找?
  18. 【图像修复】AOT-GAN《Aggregated Contextual Transformations for High-Resolution Image Inpainting》
  19. Windows 7 SP1相关资源下载
  20. 1023 GPA计算

热门文章

  1. Orace 12.2 ORA-12012: error on auto execute of job SYS.ORA$AT_OS_OPT_SY_21
  2. salesforce 零基础学习(六十二)获取sObject中类型为Picklist的field values(含record type)...
  3. Docker部署SDN环境
  4. logstash通过kafka传输nginx日志(三)
  5. Android 动态Tab分页效果
  6. 终于开通我自己的cnblogs了,自我恭喜下··
  7. linux 串口特别是接收
  8. ubuntu下vim + ctags + taglist配置和使
  9. 概述 Linux系统扫描技术及安全防范
  10. cnn 一维时序数据_一时序数据输入维cnn