JS精粹:下半部分
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>
<body>
<script>
var title = 'JS中要注意的东西' //
//全局变量
//所有在全局定义的变量都是window下的一个属性 //
//作用域
//没有块作用域,变量全部在开头声明 //
//自动插入分号
function a(){
return { }
};
//这就出问题了, 返回的是undefined
function b(){
return
{ }
}; //
//保留字
var object = {}, method;
// object.case = 1; 出错了
object['break'] = 1; //没问题
//object['case'] = 1; 没问题
//object = {'case' : 1} 这个可以的
//object = { case : 1 } 高版本浏览器可以的
// ->_-> 尽量不要使用保留字; //
console.log( typeof null );
//判断数组或者对象要用
if( a && typeof a === 'object' ){
}; //
console.log( typeof NaN ) // number;
console.log( NaN === NaN); //false
console.log( isNaN(NaN) ) //true //
//假值
var 假值 = {
'Number' : '0',
'Number' : 'NaN',
'String' : ' ',
'Object' : 'null',
'undefined' : 'undefined'
}; //hasOwnproperty;
/*
object.constructor
object.hasOwnProperty = null; 低版本的hasOwnProperty 和 constructor是可写的;
console.log( object.hasOwnProperty );
*/ /*________________割割割割割割割割割割割割割割割割割割______________________*/
var title = 'JS中的糟粕'; // 1 : == =! 和 === ==!
//邪恶的强制转换; // 2 : with语句
//性能不好
var object = {};
object.a = 11;
object.b = null;
with(object){
b = a;
}; //eval
//性能不好
eval //全局
new Function() //全局
setTimeout('a=1',1) || setInterval('a=1',1) //全局 //缺少块语句,模糊的语句结构
if(1)a=1;
for(var i=0; i<10; i+=1)a=1;
while(a)a--;
do console.log(9)
while(a); //包装
new Boolean;
new String;
new Number;
new Object;
new Array;
// undefined是new不出来的
</script>
</body>
</html>
JS精粹:下半部分的更多相关文章
- JS精粹(二)
这章主要讲语法,DC使用了表示形式语法的巴克斯范式图,这的确比语言来得准确简洁.我只想表达一个问题:表达式与表达式语句的关系.因为其他问题很明白. 从DC的巴科斯范式图上大致可以认为,表达式是比表达式 ...
- JS 精粹( 函数)
函数是对象,它与其它对象唯一的不同是它可以调用.函数可实现:代码复用.信息隐藏.代码组合调用. 建立函数时会建立:上下文.调用函数的代码.每个函数(除Function.prototype)都会有一个原 ...
- JS 精粹(三)
(一)基本问题 JS的数据类型(不是数据结构)分:简单数据类型(undefined\null\boolean\string\number\symbol).复杂数据类型(object). 对象是可变的键 ...
- JS 精粹(一)
先说说JS是容易被误解的语言的观点.从名字上来看,"Java"这似乎暗示着这门语言与Java的关系:好像这门语言是Java的子集,或比Java弱.但实际与Java并无关系,如果说非 ...
- JS精粹知识点和我的解释
函数若是不return则默认返回undefined const value=()=>{ let a=3; } let value_test; console.log(value(),value_ ...
- JS:采摘自JS精粹
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- JS 精粹(方法)
数组方法: 模拟队列的操作:push()/shift();unshift()/pop();模拟栈操作:push()/pop(); push()返回增加后的长度.unshift也是.pop和shift返 ...
- js学习心得(一)(菜鸟)
js基础已经打了好几次了,慕课跟着学了一遍,视频看了一些,还读了诸如 jsdom艺术,js精粹以及锋利jq(没读完). 这次再次重头读并写一遍代码,工具书是js,查缺补漏高级程序设计第二版,犀牛书有点 ...
- 让JavaScript回归函数式编程的本质
JavaScript是一门被误会最深的语言,这话一点不假,我们看下它的发展历史. 1995年,Netscape要推向市场,需要一门脚本语言来配套它.是使用一门已有的语言,还是发明一门新的语言,这也不是 ...
随机推荐
- ZOJ 1109 Language of FatMouse
较简单字典树,每输入一对字符串,前一个放在字典(数组)中,后一个插入字典树中,并将其最终的flag赋为前一个在数组中的下标,再就好找了.输入的处理方法要注意一下. 代码: #include <i ...
- BZOJ 1500 维修数列【Splay】
注意:1,内存限制,所以需要回收删除的点 2,当前节点的左连续区间和最大值=max(左子树的左连续区间和最大值,左子树的总和+当节点的值+max(右子树的左连续区间和最大值,0)):右连续区间和最大值 ...
- The Geometry has no Z values 解决办法
from:http://dufan20086.blog.163.com/blog/static/6616452320145269343675/ 我们在创建要素时,简单的IFeatureClass.Cr ...
- 应用python编写简单新浪微博应用(一)
转载至:http://blog.sina.com.cn/s/blog_6c39196501016o7n.html 首先,你要有一个新浪微博账号. 申请页面:http://weibo.com 其次,你要 ...
- 12个JavaScript技巧
转自:http://web.jobbole.com/86146/ 在这篇文章中将给大家分享12个有关于JavaScript的小技巧.这些小技巧可能在你的实际工作中或许能帮助你解决一些问题. 使用!!操 ...
- Xcode7 真机调试步骤以及遇到的问题解决办法
打开Xcode7,打开preference 添加自己的apple ID登陆上去 打开一个自己的想要运行在真机上的项目 插上自己的iPhone真机(真机没必要是最新的系统,没必要升级,我刚开始报错以为是 ...
- U3D事件系统总结
事件系统有三个要素:发送者,接收者, 转发者. 发送者有两种,一是相机,二是画布.发送者是事件的管理者,发起者,它们使用射线发射器来检测点击事件: 相机的physics Raycaster. 画面的C ...
- windows live writer 尝试登陆时发生意外错误,导致无法发表博客解决方案
刚用windows live writer发表博客, 但是出现如下提示: 尝试登陆时发生意外错误: 网络连接错误--尝试连接到一下日志时出错: http://www.cnblogs.com//xxxx ...
- [CareerCup] 11.8 The Rank of Number 数的排行
11.8 Imagine you are reading in a stream of integers. Periodically, you wish to be able to look up t ...
- Linux第四次学习笔记
程序的机器级表示 寻址方式的演变 DOS → 8086 → IA32 Inter处理器系列俗称x86,其演变过程(根据其所需要的晶体管数量来说明): 8086 → 80286 → i386 → i48 ...