JS相关重点知识 (概况)

Wesley13
• 阅读 789

1.value和innerHTML没有联系,只是value是表单的一个特有属性,而innerHTML是通用的。

2.当从外部引入js文件时,该外部文件里面可以有多个方法,
   html页面中的onclick只选中其中一个方法即可。
     做法是在
     注意:外部脚本不能包含标签。
     
3. js有四种方法显示数据:window.alert();弹出警示框
                        document.write();将内容写到 HTML文件中
                        innerHTML;写入到HTML元素中
                        console.log()写入到浏览器的控制台  
         注意:1》当页面加载完成后执行document.write(),则会被覆盖。
           2》使用console.log(),在浏览器中按F12,然后点击console
      1》

大家好


 
 
            3》innerHTML比document.write先显示

4.js中数字可以是整数,小数和e,不需要引号。文字内容需要用单/双引号连接。

5.js字母大小写非常敏感
函数 getElementById 与 getElementbyID 是不同的。
同样,变量 myVariable 与 MyVariable 也是不同的。

6.js常见命名是用驼峰法。如:lastName

7.js中用分号来结束语句是可选的,并且用分号的作用是为了在一行可以编写多条语句。
        如:a=1;b=4;
        
8.js会忽略多余的空格,来提高可读性。

9.js中命名对象是使用键值对的方式,以{}开始和结尾。普通数组则是用[];
       

10. 若没有赋值为var,则默认为全局变量,记住,位置不能变!js是从上到下编译!
     window是全局变量,所有数据都属于window对象。
               
         


           

     

11.js中的字符串中可以使用任何符号,也可以使用转义字符,但是注意不能跟外部的引号一样即可。
                \+符号=符号
                
12. ==意思是绝对相等,数据类型和值都必须相等。      
    x+=y意思是x=x+y
    
13.字符与数字相加,返回字符串,数字与数字相加,返回数字。 
        注意:  空文本 + 数字得到的运算结果都是把数字转成字符串,无论文本有多少个空格。但是空

格会计入长度。
      var re=""+5;显示"5" 
      var re="  "+5;显示"  5"//空格也会显示
      var re=5+5+"abc";显示"10abc"
      var re=""+5+5+"abc";显示"55abc
      
 14.只有单独的if 语句时,条件为true才会执行,当不为true时,则不执行任何代码。         
 
 15.时间的函数:var d=new Date();
                d.getHours();//获取当前时间
                d.getDay();//获取星期几      
                
16.switch情况,当两种情况相同时,可以只在第一个情况下面写代码。
switch(number)
{
case 1:alert("1");break;
case 10:
case 11:alert("10 或 11");break;
default:alert("都不是");
}           

17. for in是循环遍历对象的属性值
function myFunction(){
var person={name:"liu",age:12,address:"haha"};//对象数组的书写

方式
var x;
var txt="";//txt需要设置值,不然会显示为undefined
for(x in person){
txt=txt+person[x];//需要加上txt,不然只会遍历最后一个

的值

}
document.getElementById("demo1").innerHTML=txt;
}

18.while是遍历为true时的值。 do while是先进行一次代码的执行,再判断,所以最少执行一次。

19. break是终止循环,continue是跳出本次循环,而继续执行其后面的代码,如果有的话。

20.typeof是用来检测变量的数据类型,null可以把变量的值改变,改为空,但是其数据类型还是不会变。

而undefined也是清空对象,但是类型也成了undefined.

21.js中有5种数据类型:string ,number,boolean,object,function
        3种对象类型:Object,Date,Array
        2种不包含任何值的数据类型:null,undefined
        
22.一元运算符可以把字符类型转化为数字类型:x=+y为number类型。        

23.正则表达式(RE),使用单个字符串来描述、匹配一些类符合某个语法规则的字符串搜索模式,一般用于
   search()和 replace()方法。          
   RegExp对象是一个预定义了属性和方法的正则表达式。
   test()是检测一个字符串是否匹配某个模式。
            var patt=new RegExp("e");
document.write(patt.test("the eel"));//返回true
document.write(patt.exec("hello  eee"));//返回e,不匹配就返回null

24.try 和 catch是成对出现的
try{
addlert("welcome!");
}
catch(err){
alert(err.message);
}

25. 在js输出语句中直接用回车换行是会报错的。
            注意,不能对return语句进行换行。
           注意,定义数组和对象,最后一个不能加逗号
    points = [40, 100, 1, 5, 25, 10,];
    websites = {site:"菜鸟教程", url:"www.runoob.com", like:460,}
            
26.表单自动验证使用required

   
 

27.获取表单的值
   var fname=document.forms["myForm"]["fname"].value;
 
28.点击我什么都不会发生
   点我会调到默认的当前页的顶部 
   
29.通常运算符 ( = + - * / ) 前后需要添加空格:
       var x = y + z;
        通常使用 4 个空格符号来缩进代码块:    
        function toCelsius(fahrenheit) {
   return (5 / 9) * (fahrenheit - 32);
}  
         通常左花括号前加一个空格,右花括号单独放在一行
  for (i = 0; i < 5; i++) {
   x += i;
   }  
   - 通常在 JavaScript 中被认为是减法,所以不允许使用。   一般使用下划线_.     

js函数

1.函数显式参数(Parameters)与隐式参数(Arguments) ;

2.如果一个函数调用前使用了new关键字,则这是一个构造函数
function myFunction(arg1, arg2) {
this.firstName = arg1;
   this.lastName  = arg2;
}
    var x = new myFunction("John","Doe");
    
3.call()方法和apply()方法是预定义的两个方法,两个方法的第一个参数必须是对象本身。
myObject = myFunction.call(myObject, 10, 2);     // 返回 20
myObject = myFunction.apply(myObject, myArray);  // 返回 20

4.闭包就是一个函数引用另一个函数的变量,因为变量被引用着所以不会被回收,因此可以用来封装一个私

有变量。这是优点也是缺点,不必要的闭包只会增加内存消耗。
     或者说闭包就是子函数可以使用父函数的局部变量,还有父函数的参数。
     闭包是可访问上一层函数作用域里变量的函数,即便上一层函数已经关闭。

HTML DOM文档对象模型

1.通过 HTML DOM可访问js html文档的所有元素。

2.var x=document.getElementById("demo").getElementsByTagName("p");
  document.write(x[1].innerHTML); //根据标签查找,p是一个标签。
  document.getElementsByClassName("intro");函数来查找 class="intro" 的元素;
  document.getElementById("image").src="a.jpg";//可以改变html的属性,原图为b.jpg,现改为a.jpg
  document.getElementById("p2").style.color="blue";//可改变css的样式,比如改变颜色等。
  document.getElementById("p1").style.visibility="hidden";//改变文本,使之隐藏。
  doucment.getElementById("P2").addEventListener("click",displayDate);//点击时,事件加载。

js对象

1.js是基于prototype,而不是基于类的。
  prototype 属性使您有能力向对象添加属性和方法。
2.js用Infinity来表示数字的无穷大。
3.一个数字除以一个字符串结果不是一个数字、一个数字除以一个字符串数字结果是一个数字
var x = 1000 / "Apple";//不是数字,返回false
var y = 1000 / "1000";//是数字,返回true
4.String是一个字符串对象,a.lenght计算字符长度
                      a.indexOf("")计算字符串出现的位置,没有返回-1
                      a.match("")查找字符串中特定的字符,若找到则返回这个字符。
                      a.replace("新的","旧的")替代指定字符
                      a.toUpperCase()大写
                      a.toLowerCase()小写
                      
5.Array数组对象:var a=["一","二","三","四"];
                       a.concat(b,c);//合并两个数组
                       a.shift();//删除数组第一个元素
                       a.pop();//删除数组的最后一个元素
                       aunshift("");//在数组最前面加上元素
                       a.push("xxx");//在数组末尾加上一个元素
                       a.reverse();//将数组元素顺序反转排序
                       a.sort();//按升序排列数组
                       a.toString();//数组转化成字符串
                       
6.Math对象: a.Math.round(4.3);//返回最接近4.3的数,4
           a.Math.random();//返回0-1之间的随机数
           a.Math.max(a,b,c..);返回a,b,c..中最大的一个数   
           a.Math.min(a,b,c..);返回a,b,c..中最小的一个数                                                                 

JS BOM浏览器对象模型

1.location.href;//返回URL
  location.hostname;//返回web主机域名
  location.pathname;//返回当前页面的路径和文件名
  location.port;//返回web主机的端口
  location.protocol;//返回使用的web协议
     注意:不能使用window这个前缀。
     
2.history.back();//返回上一个地址
  history.forward();//返回下一个地址
  
3.navigator.attribute;//返回当前浏览器的信息 

4.弹窗alert();//提示
confirm("sometext");//警告
prompt("sometext","默认");//输入数据并继续

5.setInterval(function(){},时间);//间隔相同的时间执行相同的代码,1000ms为1秒
  clearInterval(a);//停止
  setTimeOut(function(){},时间);//设置方法执行的时间
  clearTimeOut(a);//停止,你必须在它设置的时间之前阻止它\

原文:https://blog.csdn.net/qq\_34954786/article/details/77987338

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
待兔 待兔
5个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Jacquelyn38 Jacquelyn38
3年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
Wesley13 Wesley13
3年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Stella981 Stella981
3年前
JS 对象数组Array 根据对象object key的值排序sort,很风骚哦
有个js对象数组varary\{id:1,name:"b"},{id:2,name:"b"}\需求是根据name或者id的值来排序,这里有个风骚的函数函数定义:function keysrt(key,desc) {  return function(a,b){    return desc ? ~~(ak
Wesley13 Wesley13
3年前
00:Java简单了解
浅谈Java之概述Java是SUN(StanfordUniversityNetwork),斯坦福大学网络公司)1995年推出的一门高级编程语言。Java是一种面向Internet的编程语言。随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言。Java是简单易学,完全面向对象,安全可靠,与平台无关的编程语言。
Stella981 Stella981
3年前
Django中Admin中的一些参数配置
设置在列表中显示的字段,id为django模型默认的主键list_display('id','name','sex','profession','email','qq','phone','status','create_time')设置在列表可编辑字段list_editable
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Python进阶者 Python进阶者
11个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这