js的写法基础分析


Posted in Javascript onJanuary 17, 2011

var a=false;
!a&&alert("hi");
解释 a为真才继续往下执行,所以会弹出hi
var a=a||"hi";
解释 当a为假的时候会继续执行,当a为真的时候跳出这个语句,所以可以通过这个办法复制默认值
上面的方法并非所有语言都是如此处理,比如PHP
$a=@$a||"hi";
echo $a;//1
php把(@$a||"hi")之后的值赋值过去了...
$a=true;
!$a&&echo "hi";
直接报错:syntax error, unexpected T_ECHO
关于prototype
很多情况下看到prototype都想到只有对象的情况下有
var add=function(){alert("b");}
add.prototype.a = function () {alert("hi");}
new add.prototype.a;
第一反应,可能会报错,其实不然,当没有生产对象的时候,可以通过add.prototype.a的方式直接调用静态的方法的
JS挺会误导人的,咳
选择器问题:
有时候需要选择一个节点下的子节点,用childNodes取值FIREFOX,IE的不同让人很郁闷
document.getElementsByTagName("head")[0].getElementsByTagName("script")[0];
上面的方法结果用在head标签阶段还好,用在其他的不怎么好用了
所有觉得还是用个类名作处理好点

function getclassnode(classname,doc){ 
doc=doc||document; 
var node=[],i=0,j=0,t; 
var allnode=doc.getElementsByTagName("*"); 
while(t=allnode[i]){ 
if(RegExp(classname).test(t.className)){ 
node[j]=t; 
j++; 
} 
i++; 
} 
return node; 
}

自从用了JQ后,把原生的JS操作都忘的差不多了,偶尔复习下,感觉特麻烦,郁闷.
补上一点今天发现的JS要注意的地方,如果一个JS已经引入到了当前文档,即使移除引入节点,通过该引入JS文件定义的变量,函数等仍然有效,因为已经加载到了当前的文档环境,如下代码:
document.getElementsByTagName("head")[0].removeChild(document.getElementsByTagName("head")[0].getElementsByTagName("script")[0]);
Javascript 相关文章推荐
JavaScript Event学习第二章 Event浏览器兼容性
Feb 07 Javascript
Jquery判断IE6等浏览器的代码
Apr 05 Javascript
jQuery内置的AJAX功能和JSON的使用实例
Jul 27 Javascript
javascript复制粘贴与clipboardData的使用
Oct 16 Javascript
node.js中的dns.getServers方法使用说明
Dec 08 Javascript
AngularJS进行性能调优的7个建议
Dec 28 Javascript
jquery ajax局部加载方法详解(实现代码)
May 12 Javascript
ES6新特性六:promise对象实例详解
Apr 21 Javascript
微信小程序MUI侧滑导航菜单示例(Popup弹出式,左侧滑动,右侧不动)
Jan 23 Javascript
layui: layer.open加载窗体时出现遮罩层的解决方法
Sep 26 Javascript
微信小程序通过websocket实时语音识别的实现代码
Aug 19 Javascript
JS绘图Flot如何实现可选显示曲线图功能
Oct 16 Javascript
js 动态文字滚动的例子
Jan 17 #Javascript
JavaScript中的Array对象使用说明
Jan 17 #Javascript
改进UCHOME的记录发布,增强可访问性用户体验
Jan 17 #Javascript
对xmlHttp对象的理解
Jan 17 #Javascript
对xmlHttp对象方法和属性的理解
Jan 17 #Javascript
Grid得到选择行数据的方法总结
Jan 17 #Javascript
JS中confirm,alert,prompt函数区别分析
Jan 17 #Javascript
You might like
DOTA2 无惧惊涛骇浪 昆卡大型水友攻略
2020/04/20 DOTA
php+mysql实现无限级分类
2015/11/11 PHP
Thinkphp 5.0实现微信企业付款到零钱
2018/09/30 PHP
jquery下实现overlay遮罩层代码
2010/08/25 Javascript
2014最热门的JavaScript代码高亮插件推荐
2014/11/25 Javascript
node.js中的fs.createWriteStream方法使用说明
2014/12/17 Javascript
jQuery使用attr()方法同时设置多个属性值用法实例
2015/03/26 Javascript
jQuery使用fadein方法实现渐出效果实例
2015/03/27 Javascript
JavaScript分页功能的实现方法
2015/04/25 Javascript
基于jQuery实现鼠标点击导航菜单水波动画效果附源码下载
2016/01/06 Javascript
详细谈谈AngularJS的子级作用域问题
2016/09/05 Javascript
关于微信jssdk实现多图片上传的一点心得分享
2016/12/13 Javascript
js实现登录注册框手机号和验证码校验(前端部分)
2017/09/28 Javascript
node.js用fs.rename强制重命名或移动文件夹的方法
2017/12/27 Javascript
ant design pro中可控的筛选和排序实例
2020/11/17 Javascript
对于Python的框架中一些会话程序的管理
2015/04/20 Python
python中map、any、all函数用法分析
2015/04/21 Python
深入讲解Java编程中类的生命周期
2016/02/05 Python
20招让你的Python飞起来!
2016/09/27 Python
python with提前退出遇到的坑与解决方案
2018/01/05 Python
基于python实现的百度新歌榜、热歌榜下载器(附代码)
2019/08/05 Python
python之array赋值技巧分享
2019/11/28 Python
Django框架中间件定义与使用方法案例分析
2019/11/28 Python
pytorch实现从本地加载 .pth 格式模型
2020/02/14 Python
美国Rue La La闪购网站:奢侈品、中高档品牌限时折扣
2016/10/19 全球购物
乔丹诺(Giordano)酒庄德国官网:找到最好的意大利葡萄酒
2017/12/28 全球购物
优质美利奴羊毛袜,不只是徒步旅行:Darn Tough Vermont
2018/11/05 全球购物
世界上最受欢迎的钓鱼诱饵:Rapala
2019/05/02 全球购物
毕业生求职推荐信
2013/11/04 职场文书
2014年入党积极分子学习三中全会思想汇报
2014/09/13 职场文书
优秀员工事迹材料
2014/12/20 职场文书
金正昆讲礼仪观后感
2015/06/11 职场文书
英语教学课后反思
2016/02/15 职场文书
粗暴解决CUDA out of memory的问题
2021/05/22 Python
Pytorch 如何加速Dataloader提升数据读取速度
2021/05/28 Python
python+pytest接口自动化之token关联登录的实现
2022/04/06 Python