首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

js which

在JavaScript中,which 并不是一个内置的关键字或函数。但是,which 常常作为事件处理程序的一个属性出现,用于确定触发事件的键或按钮。以下是关于 which 在JavaScript中的相关信息:

基础概念

在浏览器环境中,当用户与键盘或鼠标交互时,会触发相应的事件。对于键盘事件,如 keydownkeyupkeypress,可以通过事件对象的 which 属性来确定按下了哪个键。对于鼠标事件,如 clickmousedownmouseupwhich 属性可以用来确定点击了哪个鼠标按钮。

优势

使用 which 属性可以帮助开发者编写更加精确的事件处理逻辑,例如,可以根据不同的按键或鼠标按钮执行不同的操作。

类型

which 属性返回一个数字,表示按下的键或鼠标按钮的代码。

应用场景

  • 键盘事件:根据用户按下的键执行不同的命令。
  • 鼠标事件:区分左键、中键和右键点击,执行不同的操作。

示例代码

键盘事件中的 which

代码语言:txt
复制
document.addEventListener('keydown', function(event) {
    var key = event.which;
    if (key === 65) { // 65 是 'A' 键的键码
        console.log('A键被按下了');
    } else if (key === 66) { // 66 是 'B' 键的键码
        console.log('B键被按下了');
    }
});

鼠标事件中的 which

代码语言:txt
复制
document.addEventListener('click', function(event) {
    var button = event.which;
    if (button === 1) {
        console.log('左键被点击了');
    } else if (button === 2) {
        console.log('中键被点击了');
    } else if (button === 3) {
        console.log('右键被点击了');
    }
});

注意事项

  • which 属性在一些旧的浏览器中可能不被支持,现代浏览器普遍支持。
  • 在处理键盘事件时,推荐使用 event.keyevent.code 属性,因为它们提供了更直观和易读的键值表示。

替代方案

对于键盘事件,可以使用 event.key 来获取按下的键的字符,或者使用 event.code 来获取物理键的位置。例如:

代码语言:txt
复制
document.addEventListener('keydown', function(event) {
    console.log('按下的键是:', event.key); // 输出按下的键的字符
    console.log('键的位置是:', event.code); // 输出键的物理位置
});

对于鼠标事件,event.button 属性也可以用来确定点击了哪个鼠标按钮,其值与 which 相同,但 event.button 是标准属性,而 which 是非标准的,尽管它在大多数现代浏览器中仍然可用。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • Linux命令之which——查找命令

    我们经常在linux要查找某个文件,但不知道放在哪里了,可以使用下面的一些命令来搜索: which 查看可执行文件(命令)的位置。 whereis 查看文件的位置。...which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。...1.命令格式: which 可执行文件名称 2.命令功能: which指令会在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。...-V  显示版本信息 4.使用实例: 实例1:查找命令路径,并显示其所在位置 命令: which ls 输出: ? 说明: which 是根据使用者所配置的 PATH 变量内的目录去搜寻可运行档的!...但是 which 默认是找 PATH 内所规范的目录,所以当然一定找不到的!

    2.9K30

    linux每日命令(17):which命令

    which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。...一.命令格式: which 可执行文件名称 二.命令功能: which指令会在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。...:~/test$ which head /usr/bin/head 说明: which 是根据使用者所配置的 PATH 变量内的目录去搜寻可运行档的,所以,不同的 PATH 配置内容所找到的命令是不一样的...用 which 去找出 which 命令: which which 输出: Ubuntu18.04下: hc@hc-virtual-machine:~/test$ which which /usr/bin.../which Centos7中: [root@localhost ~]# which which alias which='alias | /usr/bin/which --tty-only --read-alias

    1K40

    Linux下which、whereis、locate、find 区别

    which      查看可执行文件的位置  whereis    查看文件的位置  locate     配合数据库查看文件位置  find       实际搜寻硬盘查询文件名称  1、which ...语法: which 可执行文件名称  例如:  [root@redhat ~]# which passwd  /usr/bin/passwd  which是通过 PATH 环境变量到该路径内查找可执行文件...总结: which     只能查可执行文件和别名(alias) ,并在PATH变量里面寻找 whereis   只能查二进制文件(含可执行文件)、说明文档,源文件等,从linux文件数据库(/var/...数据库大至每天更新一次,文件名是部分匹配(见 3 locate passwd 的结果:opasswd) find      最强大,什么都能查,根据条件查找文件,在硬盘上查找,效率很低 参考推荐: Linux下which

    1.2K40
    领券