JavaScript 语法总结3
1. 数组初始化可以跳着来 var s = [1,2,,,,6]; // 中间省略的元素为undefined
2. 函数定义表达式: var f = function(args){ return 0;}; 得到的 f 是一个函数直接量而不是函数的返回值.
3. 访问对象的属性可以使用 . 和 [ ] , 但是只有后者可以放入一个表达式进行计算.
4. 运算符 in , instanceof 和 delete
- in : 做操作数是一个字符串(或可转换为字符串的值), 右操作数是一个对象, 如果右侧对象拥有一个名为左操作数值的属性名, 那么表达式返回true.
- instanceof: 左操作数是一个对象, 右操作数标识对象的类, 如果左侧对象是右侧类的实例, 则表达式返回true.
- delete: 用来删除对象属性或者数组的元素, 无返回值.
var point = {x:,y:};
console.log("x" in point);
console.log("z" in point);
console.log("toString" in point); // 继承来的
var data = [,,,]; //数组也是对象
console.log("0" in data); //有索引为0
console.log( in data); //有索引为1
console.log( in data); //没有索引为4
var d = new Date();
console.log(d instanceof Date);
console.log(d instanceof Object);
console.log(d instanceof Number); //false
var obj = {x:,y:};
delete obj.x;
console.log("x" in obj); //"false"
obj.y = undefined;
console.log("y" in obj);//"true", 使用undefined赋值后属性仍然在对象中存在
var array = [,,];
delete array[];
console.log( in array); //"false"
console.log(array[]);//"undefined",访问删除的属性返回 undefined
5. void运算符, 常用在 <a href="javascript:void window.open();"> , 是一个一元运算符, 出现在操作数之前, 操作数可以返回任意类型, 操作数会照常计算, 但忽略计算结果并返回undefined.
6. 函数的声明提前.
- 函数定义语句中的函数被显式地提前到来脚本或者函数的顶部(嵌套函数提前的外层函数的顶部), 因此他们在整个脚本和函数内是可见的, 如果使用var的话, 只有变量声明提前了, 而变量的初始化代码仍然在原来的位置, 而使用函数声明语句后, 函数的名称和函数体均提前了.
- 如果函数中用到全局变量, 但是这个变量又在函数定义之后会出现什么情况呢? -- 还是能正常引用, 因为函数体并没有执行.
7. with语句
- with语句: with(object) statement; 将object添加到作用域链的头部,然后执行statement, 最后把作用域链恢复.在严格模式中是禁止使用with语句的, 非严格模式也不推荐使用,因为难于优化.
with(document.forms[]){ //使得可以直接访问表单,下面的name等都是表单的属性
name.value = "";
address.value = "";
email.value = "";
}
-->
JavaScript 语法总结3的更多相关文章
- JavaScript:JavaScript语法的详细介绍
JavaScript语法:只要Java会了,基本上javascript语法就会了. ——变量的定义 ——程序的结构控制 ——数组操作 ——函数的定义即使用 基本的test.html代码如下,它会导入下 ...
- javascript语法详解
javascript语法:运算符 条件语句if...else... 条件语句switch 循环语句for 循环语句while 跳转语句 js运算符 1.算数运算符:+ - * % / ++ ...
- When Colon Scripting is comming(JavaScript语法扩充)
当冒号脚本来临-- JavaScript语法扩充 连续好几夜的不能安眠,得出结论就是,未来语言未来的编译器应该是支持语法定制规则和语法扩展的,这样使得编程语言不断进化以更利于人类使用!of cours ...
- Javascript语法基础
Javascript语法基础 一.基本数据类型 JavaScript中支持数字.字符串和布尔值三种基本数据类型: 1.数字 数字型是JavaScript中的基本数据类型.在JavaScript ...
- JavaScript语法细节——引用与复制
原文:JavaScript语法细节--引用与复制 我们都知道,JS中变量的赋值有两种方式,最近在折腾自己写的标签栏插件,碰到了很多平时没注意的问题.正好,那边处理清楚了,稍微整理一下关于引用与复制相关 ...
- 第九十八节,JavaScript语法、关键保留字及变量
JavaScript语法.关键保留字及变量 学习要点: 1.语法构成 2.关键字保留字 3.变量 任何语言的核心都必然会描述这门语言最基本的工作原理.而JavaScript的语言核心就是ECMAScr ...
- JavaScript 语法
一.JavaScript简介 1.JavaScript是个什么东西? 它是个脚本语言,需要有宿主文件,它的宿主文件是HTML文件. 2.它与Java什么关系? 没有什么直接的联系,Java是Sun公司 ...
- JavaScript DOM 编程艺术(1)---> JavaScript语法
一. JavaScript语法目录 语法 操作 条件语句 循环语句 函数 对象 二. 具体内容 2.1 语法 javaScript代码要通过HTML/XHTML文档才能执行.可以有两种方式完成这一 ...
- JavaScript语法详解:JS简介&变量
本文最初发表于博客园,并在GitHub上持续更新前端的系列文章.欢迎在GitHub上关注我,一起入门和进阶前端. 以下是正文. JavaScript简介 Web前端有三层: HTML:从语义的角度,描 ...
- 读《javascript语法精粹》知识点总结
昨天泡了大半天的读书馆,一口气看完了<javascript语法精粹>这本书,总体来说这本书还是写的不错,难怪那么多的推荐.<javascript语法精粹>主要是归纳与总结了ja ...
随机推荐
- H3C 交换机基本设置(telnet、SSH、链路聚合)
http://www.h3c.com/cn/d_201710/1038172_30005_0.htm#_Toc493869056 H3C S5560S-SI&S5130S-SI[LI]& ...
- xargs命令学习
1.xargs复制文件 目录下文件结构为: . ├── demo1 │ ├── test.lua │ ├── test.php │ └── test.txt └── demo2 执行命令: find ...
- pythonNET day05
孤儿进程 父进程先于子进程退出,此时子进程就会成为孤儿进程. 孤儿进程会被系统指定的进程收养,即系统进程会成为该孤儿进程新的父进程.孤儿进程退出时该父进程会处理退出状态 僵尸进程 子进程先于父进程退出 ...
- 分享一个jquery插件,弥补一下hover事件的小小不足
hover事件有一个缺点:当你的鼠标无意划过一个dom元素(瞬间划过,这个时候用户可能不想触发hover事件),会触发hover事件 应该设置一个时差来控制hover事件的触发 比如jd左边的菜单 你 ...
- 读书笔记--大规模web服务开发技术
总评 这本书是日本一个叫hatena的大型网站的CTO写的,通过hatena网站从小到大的演进来反应一个web系统从小到大过程中的各种系统和技术架构变迁,比较接地气. 书的内容 ...
- 「小程序JAVA实战」小程序搜索功能(55)
转自:https://idig8.com/2018/09/23/xiaochengxujavashizhanxiaochengxusousuogongneng54/ 通过用户搜索热销词,将热销词添加到 ...
- Firemonkey Android 虚拟机
AVD,Android Virtual Device start menu>Android AVD Manager>create>start. [DCC Error] E2597 D ...
- Spring Boot日志集成
Spring Boot日志框架 Spring Boot支持Java Util Logging,Log4j2,Lockback作为日志框架,如果你使用starters启动器,Spring Boot将使用 ...
- 跟我学算法-tensorflow 实现卷积神经网络附带保存和读取
这里的话就不多说明了,因为上上一个博客已经说明了 import numpy as np import tensorflow as tf import matplotlib.pyplot as plt ...
- NSString 与C++ string字符串的互转(转)
. string 转换为 NSString std::string str("hello"); NSString *str=[NSString stringWithString:s ...