function _showLinkEle(type){
var action = {
0: function(){ // 声音+图片
},
1: function(){ // 声音+文字
},
2: function(){ // 视频
},
3: function(){ // 课程链接
},
"": function(){
return;
},
};
}
console.log(action.type); //undefined
console.log(action[type]); //可读取到值
内部javascript是什么机制导致的?
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
.可以快捷访问符合变量命名规则的key[ ]可以访问任意key,即使key不符合变量命名规则.后边跟的是字面量,不是表达式,如果要使用表达式,就只能用[]。没看懂这个函数,我觉得问题可能在于你的type是个数字,所以不能用点号查询
[]里面的是字符串
1、对象的属性名为【数字】时,只能使用[]访问,数字名称本身相当于index下标赋值
2、放对象的属性名为【变量】时,只能用[]访问,用"."没用
你可以认为
.是对象调用自己的成员变量,显然你的代码中的0,1,2,3这些数字是不符合变量的命名规则的,但这些数字作为数组[]里的键却是合法的.