javascript语法部分

原创 2018年04月17日 14:30:47
如何引入js
1、页面内 嵌套<script></script>;可以放在body,head,html外都行;
<script type="text/javascript">
console.log('告诉浏览器这里运行的是js');
<script>
2、外部引入js文件<script scr="js.js"></script>
为了符合web标准,结构(heml),表现(css),行为(javascript)相分离,通常使用外部引入;
WEB标准不是某一个标准,而是一系列标准的集合。网页主要由三部分组成:结构(Structure)、表现(Presentation)和行为(Behavior)。
对应的标准也分三方面:结构化标准语言主要包括XHTML和XML,
表现标准语言主要包括CSS,行为标准主要包括对象模型(如W3C DOM)、ECMAScript等。
这些标准大部分由万维网联盟(外语缩写:W3C)起草和发布,
也有一些是其他标准组织制订的标准,比如ECMA(European Computer Manufacturers Association)的ECMAScript标准。


注意:<script src="js.js">
alert('我这个alert是不会执行的');
</scritp>
如果使用外部引入,然后又在里面写js,外部引入生效,写在里面的js是不生效的;


注释
JavaScript 注释可用于提高代码的可读性。
单行注释以 // 开头。
多行注释以 /* 开始,以 */ 结尾。


变量
变量是用于存储数据的"容器"。
变量必须以字母开头
变量也能以 $ 和 _ 符号开头(不过我们不推荐这么做)
变量名称对大小写敏感(y 和 Y 是不同的变量)
不能用系统的关键词和保留字做为变量名
使用 var 关键字来声明变量
var a = 10;
a = 20;
后面的值会覆盖前面的值;
声明变量a 并给a赋值10;
单一声明法;
var a = 1;
var a = 2;
var a = 3;
标准写法:var a = 1,a = 2,a = 3;


数据类型
JavaScript 数据类型
字符串(String)、数字(Number)、布尔(Boolean)、数组(Array)、对象(Object)、空(Null)、未定义(Undefined)。
JavaScript 字符串
字符串是存储字符的变量。
字符串可以是引号中的任意文本。使用单引号或双引号:
var carname="hello";
JavaScript 数字
JavaScript 只有一种数字类型。数字可以带小数点,也可以不带:
var x1=34.00;
var x2=34;
JavaScript 布尔
布尔(逻辑)只能有两个值:true 或 false。
var x=true;
var y=false;
JavaScript 数组
var cars=new Array();
cars[0]="Saab";
cars[1]="Volvo";
cars[2]="BMW";
或:
    var cars=new Array("Saab","Volvo","BMW");
JavaScript 对象
对象由花括号分隔。在括号内部,对象的属性以名称和值对的形式 (name : value) 来定义。属性由逗号分隔:
var person={firstname:"John", lastname:"Doe", id:5566};
Undefined 和 Null
Undefined 这个值表示变量不含有值。
可以通过将变量的值设置为 null 来清空变量,占位。                                                                                                           

原始值                                                                                                                                                                           
五种  number,string,boolean,undefined,null;(在栈内是不可改变的值)
放在栈中,内存大小是固定的;栈(stack)先进去的东西最后出来,栈内存是重底部开始存;
var a = 10;  栈底开个内存给他;
var b = a;  栈底接着开个内存给b = 10;
a = 20;    这时是新开一个内存给a = 20;b内存的值不变;栈的值是复制的(存到栈内的值是不可改变的);


引用值
对象,数组,函数等,内存大小不固定的;堆(heap)怎么放怎么拿,散列结构;
var arr = [1,2];
引用值会在栈中存放一个地址指向堆中的值;栈中arr的地址指向堆中的[1,2];
var arr1 = arr;
这边栈中会给一个内存arr1 把arr 的地址复制给arr1,所以他们指向的是堆内的同一个值[1,2];
arr.push(3);此时他们的值都变为[1,2,3];
如果:arr = [4,5];这时arr等于一个新的引用值,所以会在堆内新开一个内存[4,5],arr地址指向他;
arr1的值不会改变;


js语法规则
语句结束要用分号(;),以免引起不必要的错误;
js的错误会终止后面的代码的运行,但不会影响到别的js代码块;js代码块是由<script></script>;


js运算符
+;数学运算,字符串拼接;字符串+上任何数据类型都是字符串;
-,*,/,%(摩尔取余数),=(赋值,优先级最低),‘()’(优先级最高);
++;自身加1;放前先加在执行语句,后面先执行语句,最后在自加;
--;自身减1;
+=;a+=10;a=a+10;a+ = 10 + 1;a = a+10+1;
-=,*=,/=,%=;


比较运算符:
只要是运算,就是要运算的,用到布尔值true 或 false
字符串比较是是比较他的ascll码;
'a' > 'b';字符串比较,比较ascll a的ascll是97 ,b的ascll是98,所以返回false
1 < 2;返回true;
‘10’< '8';这样不是10和8比较,而是字符串10和8比较
先从第一位开始比较,如果比不过就不用看第二位了,返回false;
2 == 2;返回 true;
NaN == NaN 返回false;它是特例,NaN不等于任何东西,包括他自己
undefined == undefined 返回true; >=,<=,!=;返回值也是true或false;


逻辑运算符:
“&&”与运算符;
多个表达式,先看第一个表达式是不是true,如果是的话,他会继续看第二个表达式的值是不是true;
如果都是真输出最后一个表达式的值;如果中途那个为false,就返回flase的那个值;两个表达式的话:
如果第一个是false,就返回第一个的值,反之返回第二个表达式的值;
1 && 2; 1为true,所以返回值为2;
1 && 2 + 3;1为true,返回5;
0 && 2 + 3;0为false,返回 0;
2 && 3 && 5;2为true,继续往下3为true,所以返回5;
2 > 1 && console.log('第一个表达式为true时我才会执行');
&&运算符有中断的作用,当短路语句使用;
&&的运算优先级大于 ||逻辑运算的短路特性:                                                                                                               
(表达式1)&&(表达式2) 如果表达式1为假,则表达式2不会进行运算,即表达式2“被短路”
(表达式1)||(表达式2) 如果表达式1为真,则表达式2不会进行运算,即表达式2“被短路”;


“||”或运算符:
第一个表达式为true,就返回第一个的表达式的值;
事件对象兼容写法:ie(存在windeow.enent)function(e){ var event = e || window.event}


“!”运算符,取反的意思
!123; 返回false;123是true,!123取反就是false;

转换为布尔值会变成false的有undefined,null,NaN,"",0,false



版权声明:本文为博主摘抄他人,请读者见谅 https://blog.csdn.net/qq771805860/article/details/79974281

从零开始学Swift——语法篇 第一季

本视频主要介绍Swift程序开发环境、Swift 语法基础、运算符、Swift原生数据类型、Swift原生字符串、控制语句。本视频是基 于Swift2.x版本录制,与图书《从零开始学Swift》语法篇同步讲解。是学习Swift视频,进行iOS开发的必备知识。代码下载地址 http://51work6.com/swiftbook1.php
  • 2016年03月25日 13:16

sublime上的JS代码提示1---基本语法

一、sublime如何构建代码提示在sublime中通过sublime-snippet来构建代码提示,补全代码。 选择 菜单栏的 工具-新片段,即可调出下面的这么一坨。 hello ...
  • wade333777
  • wade333777
  • 2016-05-23 00:57:20
  • 1028

javascript语法(一)

1)    引子 前不久我建立的技术群里一位MM问了一个这样的问题,她贴出的代码如下所示: 1 2 3 4 5 6 7 8...
  • u010408365
  • u010408365
  • 2014-12-19 11:31:32
  • 690

JavaScript语法手册

  • 2011年09月08日 04:47
  • 138KB
  • 下载

java与javascript语法区别

java与javascript语法字符 java中变量有明确的类型 JavaScript中变量则是动态类型 8个比特位表示1个字节 1B 1KB = 1024B...
  • qq_37198748
  • qq_37198748
  • 2017-04-22 23:23:34
  • 881

javascript语法

  • 2009年09月12日 21:06
  • 5KB
  • 下载

javascript笔记--(第三章)javascript语法,关键字,保留字

语法构成 区分大小写 ECMAScript中的一切,包括变量、函数名和操作符都是区分大小写的。例如:text和Text表示两种不同的变量。 标识符 所谓标识符,就是指变量、函数、属性的名字,或者函数...
  • a409051987
  • a409051987
  • 2017-01-31 23:24:10
  • 308

JavaScript核心语法一览

本文介绍了JavaScript的基本(常用)语法,供大家参考。 Overview 先说一下Javascript该怎么写。两种形式,一种是直接把JavaScript写在HTML页面里,另一种是存...
  • iamshaofa
  • iamshaofa
  • 2012-08-02 11:39:00
  • 9267

JavaScript-JavaScript语法集锦

  • 2008年11月06日 11:42
  • 77KB
  • 下载

Javascript ecmascript语法部分

一、Javascript简介与变量 javascript是什么? 基于浏览器 基于面向对象 事件驱动 脚本语言 javascript的作用: 表单验证,减轻服务端的压力 添加页面动画效果 动态更改页...
  • qq_39542702
  • qq_39542702
  • 2017-08-03 09:31:13
  • 116
收藏助手
不良信息举报
您举报文章:javascript语法部分
举报原因:
原因补充:

(最多只允许输入30个字)