说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

对新手有用的JavaScript开发小建议

HTML文档下载 WORD文档下载 PDF文档下载
针对JavaScript编程技术里面的技巧问题,笔者总结了几点规律,包括用数组长度截断数组、用push来合并数组、特征检测、检查某一个对象是不是数组等方法来进行编程。希望对各位初学JavaScript编程的开发者有帮助。

这篇文章将向你分享一些不为人知的但很有用的JavaScript小建议,对那些刚涉及使用JavaScript编程语言的初级开发者应该有很大的帮助。

1. 用数组长度截取数组

我们都知道,对象都是通过使用JavaScript引用的,但这并不是唯一的准则,请看下面的检验案例:

var arr1 = arr2 = [1, 2, 3]; //Change arr1arr1 = [];// arr2 will still be [1,2,3]

最初,arr1和arr2都指向了数组[1,2,3],之后当arr1重新指向[ ]的时候,arr2的引用并没有发生什么变化,仍然指向[1,2,3]。但是如果我们想让arr1和arr2都指向[ ]的话,那应该怎么做呢?我们可以利用数组的长度属性。当设置arr1.length=0的时候,arr1里面的要素将被清空。而引用是不会改变的,所以arr1和arr2指向[ ]。

2. 用push来合并数组

我们通常使用concat()来合并两个数组,例如:

var arr1=[1,2,3];var arr2=[4,5,6];var arr3=arr1.concat(arr2);arr3;[1, 2, 3, 4, 5, 6]

我们同样可以利用push()来达到这种效果:

var arr1=[1,2,3];var arr2=[4,5,6];Array.prototype.push.apply(arr1,arr2);arr1[1, 2, 3, 4, 5, 6]

应用这种方法可以把一个数组作为第二个参数,因此,arr2能够被推送到arr1里面。

3. 特征检测

在我们使用的很多API里,我们能看到一些特征检测语句,这些语句是用来检查浏览器是否支持特定的属性或方法,以便能够支持跨浏览器兼容性。可以这样做:

if(window.opera){    console.log("OPERA");}else{    console.log("NOT OPERA");}

这样的运作方式是正确的,但它的缺点是效率不高。这种类型的对象检测将在浏览器里初始化资源。更有效地方式是检查密钥是否在某一个对象里。

if("opera" in window){    console.log("OPERA");}else{    console.log("NOT OPERA");}

4. 检查某一个对象是不是数组

在JavaScript编程语言里,我们可以使用typeof来检查变量的类型,typeof可以返回数字、布尔值、字符串、对象、函数和未定义的对象。事实上这里没有数组,typeof数组就是一个对象。所以我们怎么来决定一个对象就是一个数组呢?在ECMAScript 5编程语言里,我们可以使用 Array.isArray(obj)来检查这里所提到的问题。但是目前ECMAScript 5还没有得到广泛使用。

不过,我们可以使用下面的方法:

var obj=[];Object.prototype.toString.call(obj)=="[object Array]";true

原文:Pixels Tech

PHP中利用jQuery实现SWF图像上传和裁剪 VB.NET或C#将DataSet快速导出到Excel中 HashSet的equals和hashCode重写问题 PendingIntent实现原理和代码 IntentService实现原理及内部代码 AsyncTask实现原理和内部代码 Neither user nor current process错误 ListView的右边滚动滑块启用方法 Live Wallpaper动态壁纸开发 控制软键盘显示和隐藏 设置Activity大小不再全屏原理 Android面试题,看看你基础如何? Android Canvas绘图抗锯齿解决方法 Android xliff和字符串资源 android.hardware.USB类介绍 Android开发经验谈之应用间数据共享 android_asset这个URL详细使用方法 Android 2.3系统自带高清UI图标下载 设置ScrollView滚动条的颜色 WakeLock使用方法示例代码 Concurrent并发库常见问题总结 Android数据库SQLite性能优化技巧 Android开发之Java设计模式基础篇 Android开发之Java设计模式入门篇 Android开发之Java设计模式 Android开发之Java并发包集合类性能分析 Android开发之Java集合类性能分析 Android开发之Java虚拟机原理和内存分配 Android开发之Java基础系列教程目录 Android Theme主题样式开发注意点 Android 3.0开发用的平板推荐 WORD求源代码加分之四 怎么样获得一个 EDIT 的 句柄 ?? 请问嵌入网页中的Activex如何调整自身的大小?请各位高手帮忙!谢谢! Oracle和SQLSERVER中5用户10用户到底是什么意思? 我身边的一个PLMM说,她想找一个成熟、幽默、聪明的程序员。 一个局域网内访问odbc数据源的问题 对女孩子不能太热情了! 一个easy 的question 请精通C#与VB.net的大虾帮忙翻译一下 在异地拷贝一个文件(200M以上)到本地,如何做 《C++程序语言》(特别版)怎么样 getContentPane()是什么意思? 高手请进!嵌入网页中的Activex如何获取加载它的浏览器对象?谢谢! i am 24 year old ,but i have nothing 请问哪里有exchange2000 server??? XP,IE 6 SP1,安装JRE 1.4无数次,<APPLET>标签下的东西仍不能看,<OBJECT>可以,为什么??!!求救!! Socket发送接收的问题! c++ builder6的盘 mapx 问题? partition magic 8.0 一个既包含静态图象又包含视频播放的视频,怎样把它抓屏下来??? SOS!!!一个有关全文检索,以及文档的数据库存储的问题,急急!各位大侠出招啊,在线等候 请问如何在程序中将CEdit控件设为只读或取消只读, Java认证问题 请问你们认为哪种操作系统更好用和稳定? 关于mfc dll wizard 做出来的dll 的内存泄漏问题!! vc++与C++Builder有何本质的区别? 能否做个象Media Play的ACTIVEX查件,既有动画窗口,又有按钮??? 高手,关于数据库转换的问题 给分:谁有关于“从网卡取得数据”方面的论文 大家好,有一个关于拔号、专线系统的IP地址问题 SAX的问题 表单传递后,如何判断用户是否填入了内容的? 请教 请教各位大侠 各位好,小弟初学Oracle,请各位指点哪有相关电子书下载,多谢! 辞职,不知是对是错?(第一次散分,请版主高台贵手) 关于vb在com编程的几个问题! 请教如何用C#取网卡MAC的地址?? 那位大侠做过数据加密解密的程序呀! 询问一个关于组件安装的问题 Windows2000网上邻居里没有任何东西 我要的form控件在哪里? 有谁用过windows.net server 2003? 有关于结合JBuilder介绍XML的书籍吗? treeview的一个问题 有谁用过windows.net server 2003?介绍一下相关情况?谢谢 如何单击按钮产生超级连接的效果? mail函数怎么让邮件正文换行? redhat 7.2 请问这个问题如何解决? 8.0 g Cu2S和CuO的混合物中含有铜原子数为0.3NA, 在所有支架结构中,()支架最稳定. 下列五种有色溶液与SO2作用,均能褪色,其实质相同的是( )①品红溶液 ②酸性KMnO4溶液 ③溴水 ④滴有酚酞的NaOH溶液 ⑤淀粉—碘溶液A.①④              B.①②③C.②③ 元素是一个宏观概念,他只有_________,没有___________ 结构由( )构成,()最稳固,结实,所用材料也最少. 女生生病了要我帮她去拿药 说明了什么校医室不远 她只不过是咳嗽 浪琴手表军旗系列跟瑰丽系列区别在哪?就机芯看不见的区别?军旗 L4.774.4.72.6跟瑰丽L4.760.4.72.6 ,那个好? 植物的抗氧化酶系统(SOD,POD,CAT)测定前提取的粗酶液最适保存温度是多少?该温度下最长能保存多少时间?有些说4度就可以,但最多24小时,有些又说负的几十度,但又有些人说不易结冰,究竟是 细菌拟核中有一个环状的DNA分子这句话对不对2 细菌和蓝藻都有细胞壁,细胞内只含有DNA一种核酸分子 对么? 盐湖卤水模拟怎样在实验室模拟盐湖卤水化学物质体系 RNA提取植物材料需要消毒吗?求答案 为什么环状 DNA细菌体内的A≠T,C≠G? 青海盐湖卤水可以泡脚吗 植物POD达到三四百,有没有可能?植物(沉水植物)叶片的POD值的范围一般是多少?在叶片还绿时达到三四百有没有可能? “氨能直接被植物吸收”这个说法对吗?如题有个题是:3.下面有关氮循环的说法中正确的一项是 A.生物的固氮过程就是氮被吸收到植物体内并被利用的过程 B.氮素一旦进入生物体内就会形 我要用ICS-1500型离子色谱仪测定盐湖卤水中锂的含量,请问离子色谱仪使用条件是什么,卤水需要什么预处理 怎样准确阅读药品说明书? 问问“看不懂”的粤语怎么说? 氯气能导电吗 节能灯塑料件的配方,我知道节能灯塑料件PP料加母料(就是石粉)的配方,但我石粉加多了,产品就容易碎,一捏就破,可能还有一种原料要掺进去,那就可能是玻纤,但我不知道他们的配比是多少, 带8个结晶水的氢氧化钡和氯化铵反应的中立即用玻璃棒搅拌的原因 我怎么样才能完成作业呢?请心里专家帮我分析一下!最近喜欢上了电脑游戏,表面不迷的样子~其实心里已经迷上了游戏~你们说说咋办啊?还有怎么样才能坚持! 下列所描述的二氧化硫的一些化学性质中,体现二氧化硫作为还原剂的是A.溶于水形成不稳定的亚硫酸 B与碱液反应生成硫酸根离子C通过溴水溶液使溴水褪色 D通入品红溶液中,使品 魔法玉米如何消毒? 槭的果实主要是通过哪种方式传播种子的? 国产地平线摩托车跑车怎么样?宗申250小链发动机机. 猪场氨气太重,怎么处理? 一种单质和水反应,生成另一种单质和化合物,反应物和生成物中的元素都是短周期的,水是还原剂. 不同民族的教育具有不同的传统和特点说明了教育的() A民族性 B历史继承性 C生产性 D阶段性 怎么样解决养猪场的氨气?目前我们规模比较小,但是氨气也比较严重,请问有什么方法可以解决呢? 浪琴军旗系列手表,浪琴 瑰丽 实践的基本形式包括( ) A生产实践 B处理社会关系的实践 C教育医疗实践 D科学实验 E艺术实践 (多选)E是否正确 为什么必须阅读药品说明书上的注意事项 浪琴军旗系列的机械手表,精仿的到哪买 学会合作()A.是教育的目的 B.才能适应竞争 C.是成功的要素 D.目的是受人欢迎 E.目的是改善人际关系 一个关于药品的问题,药品说明书上有如下内容:不良反应:尚不明确禁忌:尚不明确注意事项:尚不明确这说明什么问题? 化学实验电解水前后水是怎么变化的?误差产生的原因都有什么?就是水的体积前后有变化么? 菲涅耳公式推导时利用的边值关系为什么是B和D法向分量连续呢? 阅读下列材料,材料一:楚越之地,地广人希(稀),饭稻羹鱼,或火耕而水耨,果隋赢蛤.材料二:江南地广野丰,民勤本业,一岁或稔(丰收),则数郡忘饥.)材料二中的江南地区相比材料一中的描 低温杀菌的温度.我要杀除那些在不锈钢板上的细菌,密封,要低温,要多少时间+几度最好,..by the way,我要烘干80cm2的不锈钢板上的积水,密封,要多少时间+温度最好?,谢谢,for godforsaked, 灭菌灯如何安装 兵团棉花目标价补贴是按面积补还是按斤数补 财政赤字什么意思 二氧化硫做还原剂的反应都有哪些? 谁知道棉花是怎样补贴的? 浪琴军旗有几种机芯 So2 可以作还原剂吗 2014年棉花补贴怎么补 使用高压灭菌器时如锅内有空气,会影响到灭菌效果吗? 爱包含了什么含义? 棉花补贴补每亩补贴l了191元,剩下的产量补贴还能补多少钱 高压灭菌器怎么选择?ALP高压灭菌器怎么样? 爱和喜欢包含着什么含义? 细菌质粒是不是环状DNA?它要是DNA为什么还要做细胞工程的运载体?把它放入细胞里面,细菌的DNA不就也进去了么?而且目的基因是如何把质粒当成载体的呀? 电路图和线路图有什么区别 有50gKCL和KI的固体混合物加水溶解后,通入足量的氯气充分反应后,将溶液蒸干灼烧得固体31.7g.求:(1)标准状况下通入氯气的体积(2)原混合物中各物质的质量各是多少? 某种细菌每15分钟分裂一次(有一个分裂为两个)经过2小时,这个细菌由1个分裂成几个? 为什么元素是宏观概念?宏观概念不就是指看不见的么,我度娘了很多次,有人说像金属元素金银铁什么的是宏观概念我也能理解,但我记得我在哪看见说Na和Na+是钠元素,是同种元素,像这样的一 三角形组成的支架结构最稳固、结实,所用材料也最少吗?判断题 噬菌体在细菌细胞内的繁殖,需要利用细菌的物质中,为什么没DNA我看实验过程明明有细菌的DNA参加 江苏沿江8市今起用“苏五” 耗油量几吉林前郭地震灾区已发现2户房屋倒塌、江苏全省出现液态奶供不应求 物价上涨调查显示逾半受访香港公司明年平均加薪中国最后一个未通公路的县墨脱今日举行通讯:通往“高原孤岛”的“生命线”高薪由五毛一块凑起 过万很少聚焦激发社会投资活力:用改革撬动“活快递哥倒在送货路上香港官员:监护人代双非儿童买房应被豁复旦大学研究:PM0.5“杀伤力”盖传美国在台北设监听站 台方回应:台美宁波实现大灾之后无大疫 传染病例同比南京:空气质量不达预期将人工增雨消霾南京:承诺绿地不兑现 开发商将受处罚宁波市将新启用一批电子警察规范行车秩《温家宝谈教育》首发 卸任总理后首次孟加拉国列车脱轨致两人死亡诺基亚亏损大幅收窄 手机总销量同比下俄罗斯达吉斯坦共和国首府发生爆炸致1吉林前郭震区移动通讯中断 受灾情况正港区经济保持25%以上增长 成郑州经【茄葩赠书 有会有期】导演韩寒:我只​阶段性动荡距离不远了市体育局召开“三严三实”严以律己专题2015年南海农商银行存款利率多少?盘点② | 中国二十年20部公路电影乘坐飞机突感不适 郑州机场教你咋应对美国人在地铁里的一次实验 .郑州管城区今年首次分配公租房 两居室注重视觉体验的15个公众号推荐KHAKI经典:DOCKERS A2015年南海农商银行贷款利率多少?飞机降落时的疯狂瞬间郑州市民买到过期洋牛奶 获得超市“1建行特约取款如何办理?特别适合情侣玩的小游戏,还能有意外发寻找风口中的翻倍黑马股郑州一天桥电梯闲置长荒草 探访:“专穿衣搭配的黄金法则(矮个子男人篇)TUV南德携手西班牙童装品牌共促供应郑州首座地下3层绿色环廊工程开建 最
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘