js 常用知识

1、JS对于字符串的切割截取

1.1 函数:split()

功能:使用一个指定的分隔符把一个字符串分割存储到数组
例子:

 str=”jpg|bmp|gif|ico|png”; arr=str.split(”|”);

//arr是一个包含字符值”jpg”、”bmp”、”gif”、”ico”和”png”的数组

1.2 函数:join()

功能:使用您选择的分隔符将一个数组合并为一个字符串

例子:

var delimitedString=myArray.join(delimiter);

var myList=new Array(”jpg”,”bmp”,”gif”,”ico”,”png”);

var portableList=myList.join(”|”);

//结果是jpg|bmp|gif|ico|png

1.3 函数:concat()

功能:将两个数组连接在一起;

例子:

    arr1=[1,2,3,4]

  arr2=[5,6,7,8]

  alert(arr1.concat(arr2))  //结果为[1,2,3,4,5,6,7,8]

1.4 函数:charAt()

功能:返回指定位置的字符。字符串中第一个字符的下标是 0。如果参数 index 不在 0 与 string.length 之间,该方法将返回一个空字符串。

例子:

var str='a,g,i,d,o,v,w,d,k,p'

alert(str.charAt(2))  //结果为g

1.5 函数:charCodeAt()

功能:charCodeAt() 方法可返回指定位置的字符的 Unicode 编码。这个返回值是 0 - 65535 之间的整数。

方法 charCodeAt() 与 charAt() 方法执行的操作相似,只不过前者返回的是位于指定位置的字符的编码,而后者返回的是字符子串。

例子:

var str='a,g,i,d,o,v,w,d,k,p'

alert(str.charCodeAt(2))  //结果为103。即g的Unicode编码为103

1.6 函数:slice()

功能:arrayObject.slice(start,end)

start:必需。规定从何处开始选取。如果是负数,那么它规定从数组尾部开始算起的位置。也就是说,-1 指最后一个元素,-2 指倒数第二个元素,以此类推。

end:可选。规定从何处结束选取。该参数是数组片断结束处的数组下标。如果没有指定该参数,那么切分的数组包含从 start 到数组结束的所有元素。如果这个参数是负数,那么它规定的是从数组尾部开始算起的元素。

返回一个新的数组,包含从start到end(不包括该元素)的arrayobject中的元素。

例子:

var str='ahji3o3s4e6p8a0sdewqdasj'

  alert(str.slice(2,5))   //结果ji3

1.7函数:substring()

定义和用法 substring 方法用于提取字符串中介于两个指定下标之间的字符。

语法 stringObject.substring(start,stop)

start 必需。一个非负的整数,规定要提取的子串的第一个字符在 stringObject 中的位置。

stop 可选。一个非负的整数,比要提取的子串的最后一个字符在 stringObject 中的位置多 1。

如果省略该参数,那么返回的子串会一直到字符串的结尾。

返回 一个新的字符串,该字符串值包含 stringObject 的一个子字符串,其内容是从 start 处到 stop-1 处的所有字符,其长度为 stop 减 start。 说明 substring 方法返回的子串包括 start 处的字符,但不包括 end 处的字符。 如果 start 与 end 相等,那么该方法返回的就是一个空串(即长度为 0 的字符串)。 如果 start 比 end 大,那么该方法在提取子串之前会先交换这两个参数。 如果 start 或 end 为负数,那么它将被替换为 0。

例子:

var str='ahji3o3s4e6p8a0sdewqdasj'

alert(str.substring(2,6))   //结果为ji3o3

2. 常见事件

2.1 窗口事件,只在body和frameset元素中才有效

onload      页面或图片加载完成时
onunload     用户离开页面时

2.2 表单元素事件,在表单元素中才有效

onchange     框内容改变时
onsubmit     点击提交按钮时
onreset     重新点击鼠标按键时
onselect     文本被选择时
onblur      元素失去焦点时
onfocus     当元素获取焦点时

2.3 键盘事件,在base,bdo,br,frame,frameset,head,html,iframe,meta,param,script,style,title元素里都无效

onkeydown    按下键盘按键时
onkeypress    按下或按住键盘按键时
onkeyup     放开键盘按键时

2.4 鼠标事件,在base,bdo,br,frame,frameset,head,html,iframe,meta,param,script,style,title元素里都无效

onclick     鼠标点击一个对象时
ondblclick    鼠标双击一个对象时
onmousedown 鼠标被按下时
onmousemove 鼠标被移动时
onmouseout    鼠标离开元素时
onmouseover 鼠标经过元素时
onmouseup    释放鼠标按键时

2.5 其他

onresize     当窗口或框架被重新定义尺寸时
onabort     图片下载被打断时
onerror     当加载文档或图片时发生错误时

3 自定义对象:有初始化对象和定义构造函数的对象两种方法

3.1 初始化对象

例如: 对象={属性1:值1;属性2:值2;......属性n:值n} 注意:每个属性/值对之间用分号隔开;

3.2 定义构造函数的对象

例如:
function 函数名(属性1, 属性2,......属性N){
this.属性1=属性值1;
this.属性2=属性值2;
this.属性n=属性值n;

this.方法名1=函数名1;
this.方法名2=函数名2;
}

注意:方法名和函数名可以同名,但是在方法调用函数前,函数必须已经定义好,否则会出错。
为自定义的函数创建新的实例一样是使用 new 语句。

4 JS变量

声明变量时不用声明变量类型。全部使用var关键字;

    var s = "hello world",

  一行可以声明多个变量,并且可以是不同类型

    var name="jack",age=18;

声明变量时,可以不用var;如果不用var,表示全局变量
变量命名,首字符只能是字母,下划线,$美元符号;其余为字母、数字、下划线的组合。

5 JS 常量和标识符

常量:直接在程序中出现的数据。

标识符:

由不以数字开头的字母、数字、下划线(_)、美元符号($)组成;
常用于表示函数、变量等的名称;
例如:_abc,$abc,abc,abc123是标识符,而1abc不是;
JavaScript语言中代表特定含义的词称为保留字,不允许程序再定义为标识符。

6 JS 数据类型

6.1 数字类型 Number

不区分整型数值和浮点型数值;

所有数字都采用64位浮点格式存储,相当于Java和C语言中的double格式

能表示的最大值是±1.7976931348623157 x 10308

能表示的最小值是±5 x 10 -324  

6.2 字符串类型 String

是由Unicode字符、数字、标点符号组成的序列;
字符串常量首尾由单引号或双引号括起;
JavaScript中没有字符类型;常用特殊字符在字符串中的表达;

字符串中部分特殊字符必须加上右划线\;
常用的转义字符 \n:换行 \':单引号 \":双引号 \\:右划线

6.3 布尔类型 Boolean

Boolean类型仅有两个值:true和false,也代表1和0,实际运算中true=1,false=0

  布尔值也可以看作on/off、yes/no、1/0对应true/false

  Boolean值主要用于JavaScript的控制语句

6.4 undefined类型

Undefined 类型只有一个值,即 undefined。

当声明的变量未初始化时,该变量的默认值是 undefined。
当函数无明确返回值时,返回的也是值 "undefined"。

7 运算符

7.1 算术运算符:

   加: + 
   减:-
   乘:*
   除:/
   取余数:%
   自加:++
   自减:--

7.2 比较运算符:

大于:>   
大于等于:>=   
小于:<    
小于等于<=    
不等于:!=    
等于:==    
绝对等于:===   
绝对不等于:!==

7.3 逻辑运算符:

  并且:&&   
  或者:||   
  非:!

7.4 赋值运算符:

乘法/赋值(*=)
除法/赋值(/=)
取模/赋值(%=)
加法/赋值(+=)
减法/赋值(-=)

在这里插入图片描述

8 Date对象

8.1创建Date对象

//方法1:不指定参数
var nowd1=new Date();
alert(nowd1.toLocaleString( ));
//方法2:参数为日期字符串
var nowd2=new Date("2017/10/18 19:12");
alert(nowd2.toLocaleString( ));
var nowd3=new Date("10/18/17 19:12");
alert(nowd3.toLocaleString( ));
//方法3:参数为毫秒数
var nowd3=new Date(5000);
alert(nowd3.toLocaleString( ));
alert(nowd3.toUTCString());

//方法4:参数为年月日小时分钟秒毫秒
var nowd4=new Date(2017,10,18,19,12,0,300);
alert(nowd4.toLocaleString( ));//毫秒并不直接显示

8.2 获取日期和时间

获取日期和时间

    getDate()                 获取日

    getDay ()                 获取星期

    getMonth ()               获取月(0-11)

    getFullYear ()            获取完整年份

    getYear ()                获取年

    getHours ()               获取小时

    getMinutes ()             获取分钟

    getSeconds ()             获取秒

    getMilliseconds ()        获取毫秒

    getTime ()                返回累计毫秒数(从1970/1/1午夜)

8.3 设置日期和时间

 设置日期和时间

    setDate(day_of_month) 设置日

    setMonth (month) 设置月

    setFullYear (year) 设置年

    setHours (hour) 设置小时

    setMinutes (minute) 设置分钟

    setSeconds (second) 设置秒

    setMillliseconds (ms) 设置毫秒(0-999)

    setTime (allms) 设置累计毫秒(从1970/1/1午夜) 

8.4日期和时间的转换

getTimezoneOffset():8个时区×15度×4分/度=480;

    返回本地时间与GMT的时间差,以分钟为单位

  toUTCString()

    返回国际标准时间字符串

  toLocalString()

    返回本地格式时间字符串

  Date.parse(x)

    返回累计毫秒数(从1970/1/1午夜到本地时间)

  Date.UTC(x)

    返回累计毫秒数(从1970/1/1午夜到国际时间)

9 Math对象

abs(x) 返回数的绝对值。

  exp(x) 返回 e 的指数。

  floor(x)对数进行下舍入。

  log(x) 返回数的自然对数(底为e)。

  max(x,y) 返回 x 和 y 中的最高值。

  min(x,y) 返回 x 和 y 中的最低值。

  pow(x,y) 返回 x 的 y 次幂。

  random() 返回 0 ~ 1 之间的随机数。

  round(x) 把数四舍五入为最接近的整数。

  sin(x) 返回数的正弦。

  sqrt(x) 返回数的平方根。

  tan(x) 返回角的正切。

10 属性操作

elementNode.setAttribute(name,value)   

  elementNode.getAttribute(属性名)

  elementNode.removeAttribute(“属性名”);

  elementNode.className

  elementNode.classList.add

  elementNode.classList.remove

11 节点操作

节点操作,包括增删改查

    创建节点:createElement

    添加节点:appendChild

    删除节点:removeChild

    替换节点:replaceChild
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值