盘点JavaScript中那些进阶操作知识(上篇)

前言

相信做网站对JavaScript再熟悉不过了,它是一门脚本语言,不同于Python的是,它是一门浏览器脚本语言,而Python则是服务器脚本语言,我们不光要会Python,还要会JavaScript,因为它对做网页方面是有很大作用的。

1.进阶操作

这里列举了一些小编以前经常用到的一些例子以及一些经验,由于篇幅受限,这里我将会把部分执行结果的输出直接输入到代码下面。

1).浏览器输入
prompt('请输入') 返回一个字符串变量
2).浏览器输出
document.write('我被输出了') 返回一个字符串
3).浏览器弹框
alert('我是弹框') 返回一个字符串
4).浏览器交互
confirm("是否进入"); 返回一个比尔类型的值
5).控制台打印结果
console.log('显示在控制台的结果')
6).类型检查

typeof ss
ss instanceof string

7).转换为字符串

var ff=123
ff.toString()

8).转换为数字

parseInt(‘231fasd’) -->231  isNumeric 用来判断是否是数字
parseInt('df',num) --> num介于2~36之间,若省略则为10,若‘0x’开头,则为16,若小于2或大于36则为NAN
parseFloat('10') -->无法转换为数字将返回NaN,可通过isNan来判断是否为NaN

9).转换为原始对象

var ff=123
ff.ValueOf()

10).编解码函数
1))字符串编解码

escape(string)    # 编码
unescape(string)   #解码

2))URL编解码

encodeURI(URIstring)  #编码
decodeURI(URIstring)  #解码
encodeURIComponent(URIstring)   #把字符串编码为 URI 组件
decodeURIComponent(URIstring)   #解码一个编码的 URI 组件

11).Eval
可把里面的字符串当做Js代码来执行,犹如Python中的Eval。

eval("alert('fasd')")

12).Call
能够使用属于另一个对象的方法,可传多个参数,是经典的对象冒充方法。

function ss(a,b) {
    alert(a + this.val + b);
};
var o= new Object();
o.val = "123";
ss.call(o, "I am", "years old.");

output:
I am 123 years old

13).Apply
与Call差不多,前面是对象但是它后面的参数是一个数组。

function ss(a,b) {
    alert(a + this.val + b);
};
var o= new Object();
o.val = "123";
ss.apply(o, new Array("I am", "years old"));

14).Caller
返回一个对函数的引用,该函数调用了当前函数,caller 属性只有在函数执行时才有定义。

function aa() {
    if (aa.caller) {
       console.log(aa.caller);   
    } else {
        console.log("111");
     }
}
aa()

output: 111

15).Callee
返回正被执行的 Function 对象,表示对函数对象本身的引用,一般用在递归。

function ff(x){
    if(x==1)
{
        return 1;
}
    else{
        return x+arguments.callee(x-1)
}
}
ff(3);

output:6

总结

这篇文章主要介绍了JavaScript的进阶操作知识。下一篇文章,我们继续介绍JavaScript,敬请期待!

posted @ 2021-12-07 19:56  dcpeng  阅读(29)  评论(0编辑  收藏  举报