欲善其事,必利其器---页面开发基础知识整理

本文深入探讨JavaScript中的关键技巧,包括变量类型判断、字符串验证、数字输入限制及URL格式检查等实用方法,并提供了丰富的代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

引言:本次只做一次javascript方面的知识梳理,决定以代码化的方式直接展示!

(我会慢慢总结 这些以后 直接参考 不必百度谷歌 否则你一旦离开了百度谷歌 你啥都不是!)

 1 模块一
 2 <script type="text/javascript">
 3 $(function () {
 4 //非boolean值与boolean进行相加,得出数值var $num = 3;var $bol = true;
 5 //字符串与数字相加
 6 var $str = "2";//alert($num+$str);//“32” 不会报错 进行字符串拼接
 7 //alert(null.x);//TypeError: null has no properties
 8 //alert(hellow(x));
 9 //ReferenceError: hellow is not defined//alert($num + $bol);
10 //4 隐士转换 不会报错(只有调用未存在的函数或者null.XXX才会报错)
11 //NaN判断
12 var $nan = NaN;
13 //alert($nan === NaN);
14 //false (隐士转化会将 null转为0,undefined转为NaN)
15 //判断值是否等于NaN (由于精度的不同导致了IsNaN判断标准不同,利用IsNaN判断是否为数字不太严谨)
16 //alert(isNaN("x"));
17 //true
18 //alert(isNaN(undefined));
19 //true
20 //alert(isNaN({}));
21 //true
22 //替代IsNaN()判断的方式 !==
23 //var b = "fl";
24 //alert($num !== $nan);
25 //true
26 //alert(IsReallyNaN(b));
27 //false
28 //alert(IsReallyNaN(undefined));
29 //false
30 //重写IsNaN()function IsReallyNaN(x) {return x !== x;}
31 //对象转字符串用tostring,转数字用valueOf
32 var obj = {toString: function () {return "j" + $str.toString();},valueOf: function () {return 4 + $num;}}
33 alert(obj.toString() + "" + obj.valueOf());//j2 7
34 //判断值是否等于undefined (忽略了0和-0)
35 //function hello(x) {// if (!x) {// x = 11111;// }
36 // return {x:x};//}
37 //console.log(hello(-0));//1111
38 //替代逻辑运算符判断undefined的方法 typeof
39 function hellos(x) {
40 //if (typeof x==="undefined") {
41 // x = 11111;
42 //}if (x === undefined) {//不要用 x=='undefined',推荐使用===x = 11111;}//对于确定的类型判断,可以加上parseInt()更严谨if (parseInt(x) === undefined) {x = 1;}return { x: x };}
43 console.log(hellos());
44 //1111
45 console.log(hellos(-0));//0
46 });
47  
48  
49   
50 模块二
51 <script type="text/javascript">
52 $(function () {
53 $('#btn_load').click(function () {
54 //$('.content').load('/testscript/hello', function () { });//将请求的页面填充到div中
55 //$.getJSON('/testscript/tojson', function (data) {//从服务器端获取json// //遍历json文件// $.each(data, function (i, value) {// //...// });//});
56 //$.getScript('/testscript/tojs', function () {//从服务器端获取JS// //...//});
57 //全局Ajax$.ajaxSetup({});
58 //在请求服务器之前需要做的事
59 $('.content').ajaxStart(function () { $(this).hide() });
60 //在请求服务器结束需要做的事
61 $('.content').ajaxStop(function () { $(this).show(); });
62 //序列化编码后的表单元素的值
63 alert($('#frm').serialize());});
64 //取值按钮$('#btn').click(function () {
65 //获取当前select标签的值
66 alert($('#sel').val());
67 //获取选中select的文本
68 alert($('#sel option:selected').text());
69 //获取当前checkbox选择状态
70 $('[name=chk]:checked').each(function () {
71 alert($(this).val());
72 alert($(this).attr("data-IsTrue"));});
73 //获取当前选中redio标签的值
74 alert($(':radio[name=rdo]:checked').val());
75 $(':radio[name=rdo]').eq(0).prop("checked", true);//默认选择第一个
76 //获取文本域的值alert($.trim($('#are').val()));});
77 //是否全选按钮$('#chkAll').click(function () {
78 //全选 反选
79 $('#chkAll').toggle(function () {$('[name=chk]').prop('checked', true);}, function () {$('[name=chk]').prop('checked', false);});
80 //不建议用toggle,会与jq的状态冲突
81 if ($(this).prop("checked")) {$('[name=chk]').prop("checked", true);}
82  else {$('[name=chk]').prop("checked", false);}});});
83 </script> </span>

知识扩展

Number()函数可以替代IsNaN()函数做是否非数字验证,但是Number()返回NaN,IsNaN()返回boolean值。

有时候做字符串非空验证可以用===“” 也可判断Length是否为0,但是前提必须做好Trim()去空格处理,空格也会占用一个字符位置。

 1 1.判断字符串输入字符长度函数(unicode码)
 2            var validate={
 3                     //判断字符内存中实际长度
 4                    GetStrLength:function GetStrLength(value){
 5                         var len=0;
 6                         for(var i=0; i<value.length; i++){
 7                         var a=value.charAt(i);
 8                         if(a.match(/[^\x00-\xff]/ig) !=null){
 9                        len+=2;//汉字
10                 }else{
11                        len+=1;//数字
12               }
13                        return len;//返回字符长度
14            }
15        }
16   }
17    
18    
19 2.文本框中只允许限制数字输入
20 代码嵌入式<input type="text"  onkeyup="this.value='this.value.replace(/\D/g,'')'">  <input type="text"  onafterpaste="this.value='this.value.replace(/\D/g,'')'">
21 函数封装    <input type="text" data-type="print">
22                   $('input[data-type=print]').keyup(function(){
23                       var source=$(this).val();
24                       source=source.replace(/[^\d]*/g,'').replace(/\b(0+)/gi,'');//过滤中文和特殊字符
25                       $(this).val(source);
26                    });
27   
28   
29 3.验证是否输入了正确的url(http or https)
30                   $('#txtLinkAddress').blur(function(){
31                       var address_str=$.trim($(this).val());
32                       var reg=/^(http|https):\/\/([a-zA-Z\d][a-zA-Z\d-_]+\.)+[a-zA-Z\d-_][^ ]*$/;
33                       if(reg.test(address_str)){
34                             //友好提示.....
35                      }
36                  });
37   
38   
39 4.正则判断NULL OR NaN
40 function isNullOrNaN(value){
41     var flag=false; 
42     var reg=/^([1-9]|[1-9][0-9]+)?$/;
43     if(reg.test(value)){
44     flag=true;
45     return flag;
46   }
47 }

未完待续...

转载于:https://www.cnblogs.com/jsonxu/p/5292501.html

内容概要:该研究通过在黑龙江省某示范村进行24小时实地测试,比较了燃煤炉具与自动/手动进料生物质炉具的污染物排放特征。结果显示,生物质炉具相比燃煤炉具显著降低了PM2.5、CO和SO2的排放(自动进料分别降低41.2%、54.3%、40.0%;手动进料降低35.3%、22.1%、20.0%),但NOx排放未降低甚至有所增加。研究还发现,经济性和便性是影响生物质炉具推广的重要因素。该研究不仅提供了实际排放数据支持,还通过Python代码详细复现了排放特征比较、减排效果计算和结果可视化,进一步探讨了燃料性质、动态排放特征、碳平衡计算以及政策建议。 适合人群:从事环境科学研究的学者、政府环保部门工作人员、能源政策制定者、关注农村能源转型的社会人士。 使用场景及目标:①评估生物质炉具在农村地区的推广潜力;②为政策制定者提供科学依据,优化补贴政策;③帮助研究人员深入了解生物质炉具的排放特征和技术改进方向;④为企业研发更高效的生物质炉具提供参考。 其他说明:该研究通过大量数据分析和模拟,揭示了生物质炉具在实际应用中的优点和挑战,特别是NOx排放增加的问题。研究还提出了多项具体的技术改进方向和政策建议,如优化进料方式、提高热效率、建设本地颗粒厂等,为生物质炉具的广泛推广提供了可行路径。此外,研究还开发了一个智能政策建议生成系统,可以根据不同地区的特征定制化生成政策建议,为农村能源转型提供了有力支持。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值