【答疑释惑第三十四讲】Web js 常见用法

疑惑一

一、js中怎么实现hashcode值?

在java中有一种方法,就是可以获取字符串的对应的hashcode值,返回对应的整数值;

这个方法对于一些写在数据库中一些不方便存储的id值 ,那么在js中如果也需要这么一个方法可以使原生的js中没有那么怎么来实现呢?

function isNull(str){

return str == null || str.value == "";

}

/**

* java String hashCode 的实现

* @param strKey

* @return intValue

*/

function hashCode(strKey)

{

var hash = 0;

if(!isNull(strKey))

{

for (var i = 0; i < strKey.length; i++)

{

hash = hash * 31 + strKey.charCodeAt(i);

hash = intValue(hash);

}

}

return hash;

}

/**

* 将js页面的number类型转换为java的int类型

* @param num

* @return intValue

*/

function intValue(num)

{

var MAX_VALUE = 0x7fffffff;

var MIN_VALUE = -0x80000000;

if(num > MAX_VALUE || num < MIN_VALUE)

{

return num &= 0xFFFFFFFF;

}

return num;

}

以上方法经过测试完美通过,代码可以直接使用!

疑惑二

二、web前端中动画的效率性是不是css3会比js中的快?

长时间的开发web前端的各种效果中,在新兴的css3的动画实现中明显的发现,新的技术css3的动画,执行效率会比js中的动画效率高很多,由于自己的工作是基于嵌入式的开发模式中,所以对于性能的需求还是非常重要的,经过测试css3中的动画的运行速度会比js中的动画快很多,所以在web开发的动画效果中最好还是用css3开发会比js好很多;

疑惑三

三、js中的if else 与 switch case的区别?

通常来说,他们用的场景不是一个地方,也就是说,通过一个固定的整数值来区分的道路的场景那么就需要用switch case 来区分,这样效率会高很多;

但是他的弊端就是相对来说不是很灵活,只能是固定的值 ,不能是区间范围的

然而if else 相比之下就是比较适合有一个或者两个道路要走的条件,这样的条件运用起来比较灵活,应用的场景也是相对比较多;但是不要有过多的

if else 嵌套不然的话运行的速度会大大的降低!

本文分享自微信公众号 - 程序员互动联盟(coder_online)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2016-01-07

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏斑斓

对象的自治和行为的扩展与适配

? 在坏的设计中,数据往往是分散的,甚至是杂乱的,这就好像一群失去意识的猛兽,我们无法控制、协调以及管理它们。这种漫无头绪的散乱数据,犹如猛兽的肆意妄为,会给...

35960
来自专栏程序员宝库

如何掌握所有的编程语言

100本前端书籍下载|前端全套视频下载 对的,我这里要讲的不是如何掌握一种编程语言,而是所有的。 本文作者王垠,代表作《完全用Linux 工作》,著名软件工...

55580
来自专栏landv

C#本质论第四版-1,抄书才能看下去,不然两三眼就看完了,一摞书都成了摆设。抄下了记忆更深刻

51130
来自专栏Cloud Native - 产品级敏捷

从面向对象到函数式编程: 我们正在构建更成熟的关注点隔离生态系统

2016.11.17, 深圳, Ken Fang 在谈论关注点隔离生态系统前, 我想,首先需要谈谈 Procedure Programming, Functio...

211100
来自专栏web前端教室

初学js钻太深,不太好

其实我个人觉得新手不太应该追求彻底的学透每一个知识点。因为初学的时候,钻的太深并不太利于对JS有一个整体的理解。反而有可能钻牛角尖。但这种方法和心态却是必须有的...

22160
来自专栏玄魂工作室

Python黑帽编程 2.0 第二章概述

于 20世纪80年代末,Guido van Rossum发明了Python,初衷据说是为了打发圣诞节的无趣,1991年首次发布,是ABC语言的继承,同时也是一...

38170
来自专栏牛客网

拼多多前端一面面经 && 【更新】热乎二面面经

希望面经积累的人品能进二面吧,总得来说挺简单的 1. 两栏布局,左边固定,要求先加载内容区域,说出多种方法 2 .正则对象test方法和exec方法的不同,分别...

65390
来自专栏web前端教室

怎么能学透一个知识点

其实我个人觉得新手不太应该追求彻底的学透每一个知识点。因为初学的时候,钻的太深并不太利于对JS有一个整体的理解。反而有可能钻牛角尖。但这种方法和心态却是必须有的...

218100
来自专栏Albert陈凯

Scala一个综合的案例《learn scala in half an hour》 by jeff.kit

2011年1月23号Jeff参加了珠三角技术沙龙2011年1月广州小沙龙,并在会上给大家做了一个关于Scala的分享,形式是通过一个设计好的剧本(以沙龙聚会为背...

27750
来自专栏编程

JavaScript 2018:你需要和不需要深入的

编译:众成翻译/NimitzDEV zcfy.cc/article/javascript-2018-things-you-need-to-know-and-a-...

18860

扫码关注云+社区

领取腾讯云代金券