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要推向市场,需要一门脚本语言来配套它.是使用一门已有的语言,还是发明一门新的语言,这也不是 ...
随机推荐
- Android外部SD卡的读取
package com.kevin.writeorreadfile1_1; import android.app.Activity; import android.bluetooth.le.ScanF ...
- java 14 -7 Date
Date:表示特定的瞬间,精确到毫秒. 了解了解就行. 已经过时,在 JDK 1.1 之前,类 Date 有两个其他的函数.它允许把日期解释为年.月.日.小时.分钟和秒值.它也允许格式化和解析日期字符 ...
- java 14-2 正则表达式的案例
1.判断功能 String类的public boolean matches(String regex) 需求: 判断手机号码是否满足要求? 分析: A:键盘录入手机号码 B:定义手机号码的规则 136 ...
- emberjs创建类
创建一个Person类Person = Ember.Object.extend({ say: function(thing) { alert(thing); } }); 创建一个Person对象也就是 ...
- Gerrit日常操作命令收集
Gerrit代码审核工具是个好东西,尤其是在和Gitlab和Jenkins对接后,在代码控制方面有着无与伦比的优势. 在公司线上部署了一套Gerrit系统,在日常运维中,使用了很多gerrit命令,在 ...
- SQL 常见函数使用
1.字符串转化为整型 CONVERT(INT,'字符串') 2.结果集 输出为一段字符串 SELECT STUFF((SELECT ','+A FROM tableFOR XML PATH('')), ...
- [转]curl_multi 实现准多进程发请求
FROM : http://blog.sina.com.cn/s/blog_515b90d00100jtnv.html curl_multi函数族:curl_multi_closecurl_multi ...
- C++ c++初识
//c++初识 #include<iostream> //包含c++标准头文件 //<iostream>和<iostream.h>格式不一样,前者没有后缀,实际上, ...
- Asp.net用户控件和委托事件
在Asp.net系统制作过程中,门户类型的网站,我们可以用DIV+CSS+JS+Ajax全部搞定,但是一旦遇到界面元素比较复杂的时候,还是UserControl比较方便一些,各种封装,各种处理,然后拖 ...
- gunzip 和 unzip 解压文件到指定的目录
Linux 常用的压缩命令有 gzip 和 zip,两种压缩包的结尾不同:zip 压缩的后文件是 *.zip ,而 gzip 压缩后的文件 *.gz 相应的解压缩命令则是 gunzip 和 unzi ...