在学习JS时,写一个简易计算器,发现clear不可以作为自定义函数名。
一开始
当实现C为清除文本框中的value值时,自然想到的就是clear这个清除单词,所以就用了以下的函数调用:
function clear(){
str = document.getElementById("result");
str.value = "";
}
<input type="button" value=" C " onclick="clear()">
过程
一开始不知道问题出自哪里,然后就想看看这个函数到底有没有执行。
function clear(){
alert(1);
}
果然点了没什么反应。
解决
因为clear为JavaScript内置函数,不可以作为自定义的函数
因此将clear改为cl或者其他非JavaScript内置函数的函数名。
计算器清除解决代码如下:
function cl(){
str = document.getElementById("result");
str.value = "";
}
扩展:
javascript内置函数一共可分为五类:
- 常规函数
- 数组函数
- 日期函数
- 数学函数
- 字符串函数
一、常规函数
alert() | confirm() |
---|---|
eval() | isNaN() |
parseInt() | parseFloat() |
prompt() | escape() |
clear() |
二、 数组函数
join() | langth() |
---|---|
reverse() | sort() |
第三类:日期函数
getDate() | getDay() |
---|---|
getHours() | getMinutes() |
getMonth() | getSeconds() |
getTime() | getTimezoneOffset() |
getYear() | parse() |
setDate() | setHours() |
setMinutes() | setMonth() |
setSeconds() | setTime () |
setYear() | toGMTString() |
setLocaleString() | UTC() |
第四类:数学函数
abs() | acos() |
---|---|
asin() | atan() |
atan2() | ceil() |
cos() | exp() |
floor() | log() |
max() | min() |
pow() | random() |
round() | sin() |
sqrt() | tan() |
第五类:字符串函数
anchor() | big() |
---|---|
blink() | bold() |
charAt() | fixed() |
fontcolor() | fontsize() |
indexOf() | italics() |
lastIndexOf() | length() |
link() | small() |
strike() | sub() |
substring() | sup() |
toLowerCase() | toUpperCase() |