最近做项目时,才知道的 javascript 小知识(菜鸟看看,大师们就当路过吧)


<!DOCTYPE html>
<html lang="zh">
<head>
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<meta charset="utf-8" />
<script type="text/javascript">
window.onload= function(){
var number = 1; // 全局变量 数值
var string = 'javascript';// 全局变量 字符串
var jsonString = "{\"t\":\"eval get json\"}";
var jsonString2 = "[{\"t\":\"eval get json\"}]";
var array = new Array(1,2,3,4); //数组
var jsonArray = [1,2,3,4];//json(伪对象)语法数组
var date = new Date();
var json = { // json 对象
name:'javascript',
jsClass:'jquery',
Arr:[1,2,3,4,5],
jsonArr:[{name:'j'},{name:'j',value:'s'},{value:'q'}],
/*name:function(){
alert(this.jsClass);
//this.name(); //递归函数 [this内部使用 单指这个对象]
}
name:11 // 若出现定义重复属性,已最后赋值为准
*/
size:function(){
alert(number);
},
fn:null
};
alert(json.jsonArr[2].value);//json语法的优点
json.size();//同上
//json.name();

/******************定义函数************************/
function fn1(){ // 正常定义一个方法
alert("type:"+typeof json.Arr+" "+json.Arr);
}
fn = function(){ // 定义方法的另一种形式
alert(number+','+json.name); // 若定义重复函数,则会被最后定义覆盖
}
fn1();
fn();

/********************定时执行,匿名函数**********************/
setTimeout(function(){
document.getElementById('div').innerHTML = json.Arr;
},5000);

/********************解析JSON**********************/
fn2 = function(json){
var json= eval('('+json+')');// javascript eval 解析json时,必须被()包括,解析 json数组时可以不被()包括
var jsonArr = eval(json2);
alert(json.t);
alert(json[0].t);
}
fn2(jsonString);

/********************传递函数**********************/

fn3 = function(){
var i = '局部变量'; //局部变量
alert(date);
}
fn4 = function(){
alert('直接调用传递函数!');
}
var json2 = {
createfn:function(_call_fn){
json.fn = _call_fn; //将传递函数 赋值
},
createfn2:function(_call_fn){
_call_fn();//注意 ()
},
createfn3:function(){
alert('############内部传递函数##############');
},
createfn4:function(){
this.createfn2(this.createfn3());// this.createfn3(),this.createfn3
}
}
json2.createfn(fn3);
json.fn();
json2.createfn2(fn4);
json2.createfn4();
}

</script>
</head>
<body>
<div id="div"></div>
</body>
</html>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值