JavaScript语法记要

1.JS代码忽略缩进和换行

2.JS六种数据类型

String  // 字符串
Number // 数值
Boolean // 布尔值
null // 空值
undefined // 未定义
Object // 对象

3.alert必须点确定之后代码才向下执行

4.JS不分整数和浮点数,都是Number类型

5.用typeof检查变量的类型

var a = 1;
typeof a

6.JS中可以表示的最大值

Number.MAX_VALUE

7.超过最大值的用Infinity表示

var a = Infinity

8.JS可以表示的最小值

Number.MIN_VALUE

9.小于最小值的用0表示

10.二进制不能精确表示0.1

11.null专门表示为空的对象

12.typeof null 返回的是object

13.undefined 未定义 声明一个变量没有给值就是undefined

14.一个变量 += '' 可以直接转化为字符串

15.Number(null) == 0;

16.Number(undefined) == NaN;

17.parseInt()将一个字符串中的整数解析出来

18.parseFloat()将一个字符串中的浮点型解析出来

19.parseInt和parseFloat都是先将非String类型转化成String类型再进行解析

20.数字除了0和NaN都是True

21.任何值和字符串相加都会转换为字符串,然后用字符串加法相加。

22.变量 -= 0 可以转化成Number

23.一个类Number字符串可以在前面加 +转化成Number

24.a++ 这个表达式的值是a的原值

25.++a这个表达式的值是a+1的值

26.对任意值取反2次(!!) ,得到原值的布尔值

  1. ==会进行自动的类型转换

  2. ===不会做自动的类型转换

  3. !==两个值是否不全等

  4. 可以用var同时声明多个变量并赋值

var a, b, c;
var a = 1, b = 2, c = 3;

31.同一个{}内是一组语句,要么都执行,要么都不执行

32.prompt()相当于Python的input()

33.isNaN()会将传入的值先转化成Number类型再进行判断

34.switch...case语句 case后跟break退出switch

35.switch...case语句 default相当于else

36.for 循环语法

for(var n = 0; n < 11; i++){
alert(n)
}

37.死循环

for(;;){
...
}

38.用新建对象的方法创建函数

var fun = new Function()
// 括号内是可执行的字符串

39.字面量形式

function fun(形参1, [可以不写的形参1, ...2, ...3]){
...
}

40.构造函数和Python的构造函数相同

41.instanceof关键字相当于Python的isinstance()

object instanceof Function

42.构造函数语法

function Function(...){
this.xxx = xxx
...
}

43.for循环增强forEach()

arr.forEach(function(value, index, array){

})
// 回调函数

44.array.slice()方法|数组切片|前闭后开

45.array.splice()方法|截取出切片|改变原数组|第一个参数索引|第二个参数删除的长度|第三个以后的参数新的元素

46.array.splice()方法|第二个参数为0,可以直接插入元素

47.JS array的join方法参数是一个字符串和Python不同,Python的是字符串方法

48.array.sort()内传一个函数,有两个参数,如果返回值>0,交换两个的位置

arr.sort(function(a,b){
return a - b;
})

49.函数对象的两个方法apply()和call()第一个参数都是一个对象,改变函数的this指向,call方法后面直接跟实参,apply后面跟参数列表

50.函数会传递一个arguments参数,是所有的实参

51.arguments的.callee属性是原函数

52.空数组的布尔值是true

53.空对象的布尔值也是true

JavaScript语法记要的更多相关文章

  1. JavaScript:JavaScript语法的详细介绍

    JavaScript语法:只要Java会了,基本上javascript语法就会了. ——变量的定义 ——程序的结构控制 ——数组操作 ——函数的定义即使用 基本的test.html代码如下,它会导入下 ...

  2. javascript语法详解

    javascript语法:运算符 条件语句if...else...  条件语句switch  循环语句for  循环语句while   跳转语句 js运算符 1.算数运算符:+ - * % / ++ ...

  3. When Colon Scripting is comming(JavaScript语法扩充)

    当冒号脚本来临-- JavaScript语法扩充 连续好几夜的不能安眠,得出结论就是,未来语言未来的编译器应该是支持语法定制规则和语法扩展的,这样使得编程语言不断进化以更利于人类使用!of cours ...

  4. Javascript语法基础

    Javascript语法基础   一.基本数据类型   JavaScript中支持数字.字符串和布尔值三种基本数据类型: 1.数字 数字型是JavaScript中的基本数据类型.在JavaScript ...

  5. JavaScript语法细节——引用与复制

    原文:JavaScript语法细节--引用与复制 我们都知道,JS中变量的赋值有两种方式,最近在折腾自己写的标签栏插件,碰到了很多平时没注意的问题.正好,那边处理清楚了,稍微整理一下关于引用与复制相关 ...

  6. 第九十八节,JavaScript语法、关键保留字及变量

    JavaScript语法.关键保留字及变量 学习要点: 1.语法构成 2.关键字保留字 3.变量 任何语言的核心都必然会描述这门语言最基本的工作原理.而JavaScript的语言核心就是ECMAScr ...

  7. JavaScript 语法

    一.JavaScript简介 1.JavaScript是个什么东西? 它是个脚本语言,需要有宿主文件,它的宿主文件是HTML文件. 2.它与Java什么关系? 没有什么直接的联系,Java是Sun公司 ...

  8. JavaScript DOM 编程艺术(1)---> JavaScript语法

    一.  JavaScript语法目录 语法 操作 条件语句 循环语句 函数 对象 二.  具体内容 2.1 语法 javaScript代码要通过HTML/XHTML文档才能执行.可以有两种方式完成这一 ...

  9. JavaScript语法详解:JS简介&变量

    本文最初发表于博客园,并在GitHub上持续更新前端的系列文章.欢迎在GitHub上关注我,一起入门和进阶前端. 以下是正文. JavaScript简介 Web前端有三层: HTML:从语义的角度,描 ...

随机推荐

  1. IP 转发分组的流程

    IP 转发分组的流程 数据路由:路由器在不同网段转发数据包: 网络畅通的条件:数据包能去能回: 从源网络发出时,沿途的每一个路由器必须知道到目标网络下一跳给哪个接口: 从目标网络返回时,沿途的每一个路 ...

  2. 量化投资学习笔记31——《Python机器学习应用》课程笔记05

    用分类算法进行上证指数涨跌预测. 根据今天以前的150个交易日的数据,预测今日股市涨跌. 交叉验证的思想:将数据集D划分为k个大小相似的互斥子集,每个子集都尽可能保持数据分布的一致性,即从D中通过分层 ...

  3. 初学qt——数据库连接

    连接数据库我们需要有相应的dll文件,不同的数据库用不同的文件,对应的dll这里就不提供了,网上一搜一堆,就只说下这些文件的存放位置吧. 找到对应的dll文件后打开自己安装的qt的文件目录,将dll文 ...

  4. 死磕Lambda表达式(二):Lambda的使用

    城市就是森林,每一个男人都是猎手,每一个女人都是陷阱.--<三体> 在哪使用Lambda表达式? 在上一篇文章(传送门)中介绍了Lambda表达式的基本语法,其中的举了一个Lambda表达 ...

  5. Windows激活服务器搭建

    1.下载服务端的安装包,下载地址: https://github.com/Wind4/vlmcsd/releases 注意,下载编译好的包省时间,名称为:binaries.tar.gz 或者直接下载我 ...

  6. 在eclipse的Java类文件中,右上角出现大写字母A代表什么

    代表这个文件(类)是一个抽象类abstract的第一个字母:

  7. JZOJ 5236. 【NOIP2017模拟8.7A组】利普希茨

    5236. [NOIP2017模拟8.7A组]利普希茨 (File IO): input:lipschitz.in output:lipschitz.out Time Limits: 1000 ms ...

  8. 必备技能七、Vuex

    这段时间一直在用vue写项目,vuex在项目中也会依葫芦画瓢使用,但是总有一种朦朦胧胧的感觉.于是决定彻底搞懂它. 看了一下午的官方文档,以及资料,才发现vuex so easy! 作为一个圈子中的人 ...

  9. 数据结构 4 时间复杂度、B-树 B+树 具体应用与理解

    前言 面试中,经常会问到有关于MYSQL 索引的相关概念,我们之前也都学过有关树的概念.以及二叉树.二叉查找树.红黑树等.这一节,来关注经常是数据库索引中使用的B-树 在说这些之前,我们需要了解时间复 ...

  10. 学习ConcurrentHashMap并发写机制

    1. 前言 上篇文章讲了 Unsafe 类中 CAS 的实现,其实是在为这篇文章打基础.不太熟悉的小伙伴请移步Unsafe 中 CAS 的实现.本篇文章主要基于 OpenJDK8 来做源码解析. 2. ...