我无法正确获取select中选择的option的value值

我在获取下拉框选定的数值时遇到了问题,他仅能获取默认的第一个选项的value值,我不清楚这与我使用layui框架有没有关系,因为我所能找到的所有解决方案都已尝试无果
问题相关代码,请勿粘贴截图

这是下拉框部分

<div class="layui-form-item">
            <label class="layui-form-label"></label>
            <div class="layui-input-block">
              <select name="year" id="year" lay-filter="aihao">
                <!-- <option value=""></option> -->
                <option></option>
                <option value="1">2018</option>
                <option value="2">2019</option>
                <option value="3">2020</option>
                <option value="4">2021</option>
                <option value="5">2022</option>
              </select>
            </div>
          </div>

这是js部分

  $.getJSON("xh.json",function(json){
  var d=JSON.parse(localStorage.getItem('list5'))
        var Electricity=0
        var Gas=0
        var Water=0
        var Diesel=0
        var Gasoline=0
       
       
        var year=  $('#year option:selected').val();
       
       
     console.log(year) 

我可以通过更改option:实现选择输出任何一个value的值,但是仅在进行识别选项再输出值时我仅可以输出第一个option的value
当第一个不设定value时将取空

运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果

当我选择一个选项是可以获得对应的value值

输出是选中的value,一直输出第一个是不是因为你选中的是第一个?